• std::setとstd::vectorの違いは何ですか?

    質問 私は今STLを学んでいます。私は set コンテナについて読みました。私はあなたが使用したいときに質問があります set ? 読み終わった後 セットの説明 で代用できるため、無駄なようです。 vector . の長所と短所を教えてください。 vector 対 set のコンテナです。ありがとうございます。 どのように解決するのですか? A set は順序

    2023-08-17 07:04:54
  • const変数をラムダで捕捉する必要がない場合があるのはなぜか?

    質問 次のような例を考えてみましょう。 #include <cstdlib> int main() { const int m = 42; [] { m; }(); // OK const int n = std::rand(); [] { n; }(); // error: 'n' is not captured } なぜ n を

    2023-08-16 17:11:02
  • C++11:なぜ std::condition_variable は std::unique_lock を使用するのですか?

    質問 の役割について少し混乱しています。 std::unique_lock で作業しているときに std::condition_variable . 私が理解した限りでは ドキュメント , std::unique_lock は基本的に肥大化したロックガードで、2つのロック間で状態を入れ替えることが可能です。 私はこれまで pthread_cond_wait(pthread

    2023-08-16 13:26:21
  • 警告レベルを一時的に変更するために #pragma warning push/pop を使用するのは正しい方法ですか?

    質問 時々、警告を全く発しないC++コードを書くのは難しいです。しかし、警告を有効にすることは良い考えです。そのため、ある特定の構成要素に関する警告を無効にして、他のすべてのコード部分でそれらを有効にすることがしばしば必要です。 私はこれまで、それを行う2つの方法を見てきました。 一つ目は #pragma warning( push ) と #pragma warning( p

    2023-08-16 12:33:50
  • intをboolに変換するときに!を使うのはなぜですか?

    質問 このように整数をブーリアンに変換する理由は何でしょうか? bool booleanValue = !!integerValue; ではなく、単に bool booleanValue = integerValue; 私が知っているのは、VC++7 では、後者が C4800 警告 が発生し、前者は発生しないことです。他に何か違いがあるのでしょうか? どのように

    2023-08-16 07:20:56
  • CやC++で、算術演算の前にshortをintに変換しなければならないのはなぜか?

    疑問点 私が得た回答から この質問 の変換について、C++がこの要件を受け継いだようです。 short を int に変換することができます。 なぜ は、そもそもC言語で導入されたのでしょうか?なぜこれらの操作を short ? 例えば、( コメント中のdypさんの提案から抜粋 ): short s = 1, t = 2 ; auto x = s + t

    2023-08-16 02:38:49
  • クラス変数:パブリックアクセスはリードオンリーだが、プライベートアクセスはリード/ライト

    質問 おっと、今のところそのソケットライブラリには取り組んでいません。C++でもう少し教育しようと思っています。 クラスで、ある変数を一般には読み取り専用で、個人的にアクセスするときは読み取り+書き込みにする方法はありますか? 例えばこんな感じです。 class myClass { private: int x; // this could be any type, h

    2023-08-14 14:54:24
  • 地図から値を取得する方法を教えてください。

    質問 私は map という名前の valueMap を次のようにします。 typedef std::map<std::string, std::string>MAP; MAP valueMap; ... // Entering data. そして、このマップを関数に参照渡ししています。 void function(const MAP &map) {

    2023-08-14 09:17:21
  • イテレータを使うには?

    質問 私は2点間の距離を計算しようとしています。私はC + +でベクトルに格納されている2つの点:(0,0)と(1,1)。 私は次のような結果を得ることになっています。 0 1.4 1.4 0 しかし、実際に得られた結果は 0 1 -1 0 vectorでのiteratorの使い方がおかしいと思います。 どうしたらこの問題を解決できますか? 下にコードを載せました。

    2023-08-13 20:56:09
  • フレンドを利用せずに、クラス外からプライベートメンバーにアクセスすることはできますか?

    質問 免責事項 私が質問していることがまったく馬鹿げていること、そしてプロダクションコードでそのようなことを試したいと思う人は、解雇されるか撃たれるべきであることは、十分に承知しています。 私が主に見ているのは は ができるかどうかを見ています。 さて、それはそれとして、C++でクラスの外からクラスのプライベートメンバにアクセスする方法はあるのでしょうか? 例えば、ポインタの

    2023-08-13 10:45:18
  • [解決済み] なぜ、インラインアセンブリコメントを追加すると、GCCの生成するコードが激変するのですか?

    疑問点 ということで、こんなコードがありました。 constexpr unsigned N = 1000; void f1(char* sum, char* a, char* b) { for(int i = 0; i < N; ++i) { sum[i] = a[i] + b[i]; } } void f2(char* sum, char* a,

    2023-08-13 05:14:34
  • [解決済み] テンプレートクラスをtypedefするには?重複

    質問 この質問はすでにここに回答があります : C++テンプレートtypedef (回答1件) 終了 7 年前 . どのようにす

    2023-08-13 02:46:41
  • [解決済み] 多次元std::array [重複]。

    質問 この質問はすでにここに回答があります : 2D std::arrayの初期化(中括弧付き)はなぜできないのでしょうか?重複 (1つの答え) <!

    2023-08-12 19:19:02
  • 2つのNULLポインタを引き算する動作は定義されているか?

    質問内容 2 つの非 void ポインタ変数の差は、(C99 および/または C++98 によって)定義されていますか? NULL である場合、その差は定義されますか? 例えば、次のようなバッファ構造を持っているとします。 struct buf { char *buf; char *pwrite; char *pread; } ex; 言う。 ex.buf は配列

    2023-08-12 14:13:29
  • 長いダブルリテラルのC++サフィックスは何ですか?

    質問 C++(およびC)では、サフィックスなしの浮動小数点リテラルは、デフォルトで double となりますが、サフィックス付きの f を意味する float . を得るための接尾辞は何ですか? long double ? 知らずに、定義すると、言う。 const long double x = 3.14159265358979323846264338328; しかし、私

    2023-08-12 12:56:32
  • [解決済み] glBindVertexArraysとglBindBufferの役割とその関係とは?

    質問 私はOpenGLとグラフィックスプログラミングの初心者です。私は、これまで本当に徹底的でよく書かれている教科書を読んできました。しかし、私はよく理解していないコードでポイントにヒットし、私は先に進む前にこれらの行の意味を理解したいと思います。 GLuint abuffer; glGenVertexArrays(1, &amp;abuffer); glBindVertexArray(

    2023-08-12 01:43:55
  • 可変型テンプレート関数の異種引数パックに対する汎用計算を行うには?

    質問 PREMISE: 可変個体テンプレートで少し遊んだ後、私は些細なメタプログラミングのタスクを少し超える何かを達成することはすぐにかなり面倒になることに気づきました。特に、私は自分自身が 引数パックに対する一般的な操作 というような 繰り返す , 分割 , ループ の中に std::for_each -のような形でループさせます。 視聴後 ア

    2023-08-11 23:59:50
  • std::shared_ptr のダウンキャストはどのように行うのですか?

    質問 考えてみてください。 struct SomethingThatsABase { virtual bool IsChildOne() const { return false; } virtual bool IsChildTwo() const { return false; } }; struct ChildOne : public SomethingThatsAB

    2023-08-10 02:02:21
  • [解決済み] なぜC++では'.'演算子をオーバーロードできないのですか?

    質問 C++で.演算子をオーバーロードして、オブジェクトへの参照を返すことができると非常に便利です。 をオーバーロードすることができます。 operator-&gt; と operator* ではなく operator. これには技術的な理由があるのでしょうか? どのように解決するのですか? 参照 Bjarne Stroustrupの言葉です。 : &lt;ブ

    2023-08-09 16:23:44
  • constexpr クラスをヘッダで宣言し、別の .cpp ファイルで定義することは可能ですか?

    質問 私は、クラス Dimension というクラスがあり、(他のクラスと同様に)Dimension.hというファイルで定義しています。 class Dimension { public: constexpr Dimension() noexcept; constexpr Dimension(int w, int h) noexcept; int widt

    2023-08-09 11:37:17