• [解決済み] unique_ptr::release()はデストラクタを呼び出すのか?

    質問 このコードは正しいですか? auto v = make_unique<int>(12); v.release(); // is this possible? と同じ意味ですか? delete と同じですか? どのように解決するには? いいえ、このコードはメモリリークを引き起こします。 release は、管理されたオブジェクトの所有権を解放する

    2023-01-15 17:51:56
  • [解決済み] ポインタの有効性のテスト(C/C++)

    質問 与えられたポインタが "valid"であるかどうかを (もちろん、プログラム的に) 判断する方法はあるでしょうか? NULL をチェックするのは簡単ですが、0x00001234 のようなものについてはどうでしょうか? この種のポインタをデリファレンスしようとすると、例外やクラッシュが発生します。 クロスプラットフォームな方法が望ましいですが、プラットフォーム固有

    2023-01-15 10:43:39
  • [解決済み] ポインタを比較するには?

    質問 2つのポインタがあるとします。 int *a = something; int *b = something; 同じ場所を指しているかどうかを比較したい場合、(a == b)でうまくいきますか? どのように解決するのですか? そうです、これは 生ポインタ の等価性です。どちらも同じ場所を指している(あるいは ポインタのエイリアス ); 通常は 仮想アド

    2023-01-14 15:52:30
  • [解決済み] 別々の文字列からフルパス文字列を(安全に)構築するには?

    質問 C++にはpythonの関数に相当するものはありますか? os.path.join ? 基本的に、私はファイルパスの2つ(またはそれ以上)の部分を結合して、2つの部分が完全に適合することを心配する必要がないようなものを探しています。もしそれがQtにあるならば、それもまたクールでしょう。 基本的に、私はあるコードのデバッグに 1 時間費やしましたが、少なくともその一部は root

    2023-01-14 07:57:37
  • [解決済み] ラムダで参照渡し('&this')を捕捉できないのはなぜですか?

    質問 正しいキャプチャ方法は this (オブジェクトのプロパティを変更する)ラムダでの正しい方法は以下の通りです。 auto f = [this] () { /* ... */ }; しかし、私が見た次のような特殊性が気になる。 class C { public: void foo() { // auto f = [] () {

    2023-01-14 06:55:39
  • [解決済み] PythonはC++より高速で軽量?[クローズド]

    質問 現在のところ、この質問は私たちのQ&A形式には適していません。私たちは回答が事実、参考文献、専門知識によって裏付けられていることを期待していますが、この質問はおそらく討論、議論、投票、または拡大した議論を求めるものでしょう。この質問を改善し、再開できる可能性があると思われる場合 ヘルプセンターへ をご覧くだ

    2023-01-14 05:31:03
  • [解決済み] C++のforループに2つのincrement文を入れるにはどうしたらいいですか?

    質問 の中で2つの変数をインクリメントしたい。 for -ループ条件において、1つではなく2つの変数をインクリメントしたいです。 のようなものですね。 for (int i = 0; i != 5; ++i and ++j) do_something(i, j); これはどのような構文ですか? どのように解決するのですか? よくあるイディオムとして カンマ演

    2023-01-13 16:07:28
  • [解決済み] const (T const*) へのポインタの削除

    質問 constポインタについて、基本的な質問があります。私は、constポインタを使用してconstでないメンバ関数を呼び出すことは許可されていません。しかし、私はconstポインタ上でこれを行うことが許可されています。 delete p; これはクラスのデストラクタを呼び出すもので、本質的には非恒等式の'メソッド'です。なぜこれが許されるのでしょうか?これをサポートするためだけな

    2023-01-13 12:46:32
  • [解決済み] C++11: 変数型テンプレート関数のパラメータ数?

    質問 variadic テンプレート関数の引数の数を取得するにはどうしたらよいでしょうか。 すなわち template<typename... T> void f(const T&... t) { int n = number_of_args(t); ... } を実装するための最良の方法は何でしょうか? number_of_args を実

    2023-01-13 10:18:44
  • [解決済み] NULLを埋め込んだstd::stringはどのように構築するのですか?

    質問 std::stringを次のような行で構成したい場合、どのようにすればよいでしょうか。 std::string my_string("a\0b"); 結果の文字列に3つの文字(a, null, b)を入れたいのですが、1つしか入りません。 適切な構文は何ですか? どのように解決するのですか? C++14以降 を作成することができるようになりました。 リテラル s

    2023-01-12 11:30:26
  • [解決済み] C++のヘッダーファイルはどのように実装を含めることができますか?

    質問 C/C++の専門家ではありませんが、ヘッダーファイルのポイントは関数を宣言することであり、C/CPPファイルは実装を定義することだと思っていました。 しかしながら、今夜いくつかの C++ コードを見直したところ、クラスのヘッダーファイルでこれを見つけました...。 public: UInt32 GetNumberChannels() const { return _num

    2023-01-12 06:42:29
  • [解決済み] コピー保証のエリシオンはどのように機能しますか?

    質問 2016年のOulu ISO C++標準化会議において、以下のような提案がなされました。 簡略化された値カテゴリによるコピーエリジョンの保証 は、標準化委員会によって C++17 に投票されました。 コピー除去の保証は具体的にどのように機能するのでしょうか。コピー除去がすでに許可されていたいくつかのケースをカバーするのでしょうか、それともコピー除去を保証するためにコードの変更

    2023-01-12 03:41:48
  • [解決済み] C++でオブジェクトをシリアライズするには?

    質問 オブジェクトの小さな階層があり、それをシリアライズしてソケット接続で送信する必要があります。 私は、オブジェクトをシリアライズし、それがどのような型であるかに基づいてそれをデシリアライズする必要があります。 C++ でこれを行う簡単な方法はありますか (Java にあるように)。 C++のシリアライゼーションオンラインコードサンプルやチュートリアルはありますか? EDITです

    2023-01-12 03:34:17
  • [解決済み] インポートライブラリの仕組みを教えてください。詳細は?

    質問 私は、これがギークにとって非常に基本的なことに見えるかもしれないことを知っています。しかし、私はそれを明確にしたいのです。 Win32 DLL を使いたいとき、通常は LoadLibrary() や GetProcAdderss() のような API を呼び出すだけです。しかし、最近、DirectX9 で開発しているのですが、DirectX9 に対応するために d3d9.lib

    2023-01-11 21:57:31
  • [解決済み] C++の名前空間をヘッダとソースに作成する(cpp)

    質問 ヘッダーファイルとcppファイルの内容を名前空間でラップするのと、ヘッダーの内容だけをラップして namespaceを使用する とするのとでは、何か違いがあるのでしょうか? 違いというのは、パフォーマンスの低下や、問題を引き起こす可能性のある微妙に異なるセマンティクス、または私が注意する必要があるものを意味します。 例 // header namespace X {

    2023-01-11 16:08:44
  • [解決済み] std::multimap<key, value> と std::map<key, std::set<value> > の違いは何ですか?

    質問 1つのキーと複数の値で一意であることがわかりました。 どのように解決するのですか? マルチマップには、(key, value)のペアが格納されており、keyとvalueの両方が複数回出現することがあります。 は map&lt;key, set&lt;value&gt;&gt; は特定のキーに対して各値を一度だけ保存します。そのためには、キーだけでなく、値を比較できるよう

    2023-01-11 14:31:10
  • [解決済み] std::スレッドがまだ実行されているかどうかを確認するには?

    質問 を確認するにはどうしたらよいでしょうか。 std::thread がまだ実行されているかどうかを (プラットフォームに依存しない方法で) チェックするにはどうしたらよいでしょうか? それは timed_join() メソッドと joinable() はそのためのものではありません。 でmutexをロックすることを考えたのですが、これは std::lock_guard

    2023-01-10 21:57:31
  • [解決済み] CとC++で使用されるexecのバージョンは何が違うのでしょうか?

    質問 C言語(およびC++)で使用可能なexecのバージョンは以下のとおりです。 execl execle execlp execv execve execvp 両者の違いは何ですか?また、どちらを使うべきか、どのように判断すればよいのでしょうか? どのように解決するのですか? 違いは、組み合わせです。 L対V : 実行されるプログラムにパラメータを渡すかどうか。

    2023-01-10 08:21:42
  • [解決済み] なぜC++では__(ダブルアンダースコア)が多用されるのか?

    疑問点 オープンソースの C++ コードを見ていて、コード内で多くのダブルアンダースコアが使用されていることに気づきました。 return __CYGWIN__; ちょっと疑問に思ったことがあります。これには理由があるのでしょうか、それとも一部の人のコードスタイルなのでしょうか? 私はそれが読みにくくしていると思います。 どのように解決するのですか? から C++でのプロ

    2023-01-10 02:04:30
  • [解決済み] C++11のラムダ実装とメモリモデル

    質問 C++11 のクロージャについて正しく考えるための情報が欲しいのですが、クロージャと std::function について、どのように実装され、どのようにメモリが処理されるかという観点から、正しく考える方法についての情報が欲しいです。 私は時期尚早な最適化は信じていませんが、新しいコードを書くときに、自分の選択がパフォーマンスに与える影響を注意深く考慮する習慣はあります。 また

    2023-01-09 11:25:52