• std::transformとstd::for_eachの違いは何ですか?

    質問 どちらも要素の範囲に関数を適用するために使用することができます。 高いレベルでは std::for_each は、関数の戻り値を無視し、実行順序を保証します。 実行順序を保証します。 std::transform はイテレータに戻り値を代入し、実行順序を保証しません。 実行順序を保証するものではありません。 どのような場合に、一方と他方を使い分けるのがよいのでし

    2023-10-04 15:52:08
  • 文字列のベクトル配列の初期化

    質問 文字列のベクトル配列を初期化することは可能でしょうか? 例えば static std::vector<std::string> v; //declared as a class member 私は static で初期化し、文字列で埋めるだけです。それとも、通常の配列のように初期化できない場合は、コンストラクタで埋めるべきでしょうか。 どのように解決する

    2023-10-04 12:22:26
  • c++: カンマを使った数値の書式設定?

    質問 整数を受け取り、それを返すメソッドを書きたい。 std::string を返すメソッドを書きたい。 宣言の例です。 std::string FormatWithCommas(long value); 使用例です。 std::string result = FormatWithCommas(7800); std::string result2 = FormatWithCo

    2023-10-02 19:40:17
  • ベクターイレーズイテレータ

    質問 私はこのコードを持っています。 int main() { vector<int> res; res.push_back(1); vector<int>::iterator it = res.begin(); for( ; it != res.end(); it++) { it = res.erase(it

    2023-10-02 16:34:16
  • std::fstreamを閉じる必要がありますか?重複

    質問 この質問はすでにここに回答があります : 閉じる 11年前 . 重複の可能性があります。 ifstreamを手動で閉じる必要がありますか? を呼び出す必要がありますか? fstream.close() を呼び出す必要があるのでしょうか?

    2023-10-02 10:06:14
  • なぜstd::atomicではvolatile修飾子が使われているのですか?

    質問 私が読んだところでは ハーブ・サッター と その他 と思うでしょう。 volatile と並行プログラミングは、少なくとも C/C++ に関する限り、完全に直交する概念であると思うでしょう。 しかし、GCC では 実装 はすべて std::atomic のメンバー関数には volatile の修飾子があります。 同じことは、Anthony Willi

    2023-10-02 03:26:11
  • フィールドとコンストラクタのパラメータに同じ名前を使用することはできますか?

    質問 class C { T a; public: C(T a): a(a) {;} }; それは合法ですか? どのように解決するのですか? はい、これは合法であり、すべてのプラットフォームで動作します。 メンバ変数 a を、渡された値 a に正しく初期化します。 しかし、全てではありませんが、異なる名前を付ける方がよりクリーンであると考えられている人もいます。 私

    2023-10-01 23:55:49
  • std::function<>と標準関数ポインタの違い?[重複しています]。

    質問 この質問はすでにここに回答があります : C++でstd::functionと関数ポインタのどちらを使うべきですか? (6つの回答) 終了

    2023-10-01 10:19:02
  • C++11:正しいstd::arrayの初期化?

    質問 std::arrayを以下のように初期化すると、コンパイラは中括弧が足りないという警告を出します。 std::array&lt;int, 4&gt; a = {1, 2, 3, 4}; これで問題が解決しました。 std::array&lt;int, 4&gt; a = {{1, 2, 3, 4}}; これは警告メッセージです。 missing braces arou

    2023-09-30 15:34:46
  • C++のコードでprintfを使うべきですか?

    質問 私は通常 cout と cerr を使ってコンソールにテキストを書き込むことができます。しかし、私は時々、古き良き時代の printf ステートメントを使う方が簡単だと思うこともあります。私は、出力をフォーマットする必要があるときに、これを使います。 これを使う場所の一例としては // Lets assume that I'm printing coordinates

    2023-09-30 10:47:26
  • STLコンテナの終了イテレータと等しいイテレータをインクリメントするとどうなるか

    質問 イテレータがベクトルの最後の要素を指しているときに、イテレータを2つインクリメントするとどうなりますか? この質問 で、STLコンテナへのイテレータを2要素ずつ調整する方法を尋ねていますが、2つの異なるアプローチが提供されています。 算術演算子の形式を使用する - +=2 または ++ を 2 回使用する。 またはstd::advance()を使用する イテレータが

    2023-09-29 08:54:51
  • std::__cxx11::string から std::string への変換

    質問 私はc++11を使用していますが、それ用に設定されていないライブラリもあり、いくつかの型変換が必要です。特に、私は std::__cxx11::string を通常の std::string を追加する方法が見つかりません。 (string) を前につけてもうまくいきません。 変換しないと、このようにリンカーエラーが出ます。 undefined reference to

    2023-09-29 02:42:21
  • shared_ptr はテンプレート・パラメータを1つしか取らないのに、 unique_ptr はなぜ2つ取るのですか?

    質問 どちらも unique_ptr と shared_ptr は、それらが所有するオブジェクト上で呼び出すカスタムデレッタを受け入れます。しかし unique_ptr のテンプレート・パラメータとして渡されます。 クラス の型であるのに対し shared_ptr のカスタムデイレクタのタイプは コンストラクタ . template &lt;class T,

    2023-09-27 20:36:45
  • ベースクラスのメソッドにアクセスするのに、なぜ "using" キーワードを使用しなければならないのですか?

    質問 私の問題を説明するために、以下のコードを書きました。11行目をコメントすると(キーワード "using" )、コンパイラはファイルをコンパイルせず、次のようなエラーを表示します。 invalid conversion from 'char' to 'const char*' . メソッドを見ていないようです。 void action(char) の Parent クラスで So

    2023-09-26 22:44:05
  • 64ビット整数のパック8ビット整数を1ずつ並列に減算する、ハードウェアSIMDなしのSWAR

    質問 64ビット整数があり、それを8つの要素を持つパックされた8ビット整数の配列として解釈している場合。定数 1 を引き、ある要素の結果が他の要素の結果に影響を与えることなくオーバーフローを処理する必要があります。 私は現在このコードを持っていて、それは動作しますが、並列で各パックされた8ビット整数の減算を行い、メモリアクセスを行わないソリューションが必要です。 x86 では、次のよ

    2023-09-26 18:16:50
  • C++ std::set の更新が面倒: その場で要素を変更できない

    質問 に対する更新操作を見つけたのですが std::set にはそのような API がないので、面倒です。 cppreference . ということで、現在私がやっているのはこんな感じです。 //find element in set by iterator Element copy = *iterator; ... // update member value on copy,

    2023-09-26 15:57:31
  • インテル構文でclangを使用してアセンブリコードを生成する方法は?

    質問 として この質問 が示すように、g++で、私は g++ -S -masm=intel test.cpp . また、clangでは clang++ -S test.cpp ができますが -masm=intel は clang ではサポートされていません ( warning argument unused during compilation: -masm=intel ).

    2023-09-26 15:32:47
  • std::stringのプリペンド

    質問 を前置する最も効率的な方法は何でしょうか? std::string ? そのために関数全体を書き出す価値があるでしょうか、それとも1~2行で済むでしょうか?私は std::string::push_front . どのように解決するのですか? 実は似たような機能で、存在しない std::string::push_front と同じような機能があり、以下の例を見てください。

    2023-09-26 14:01:14
  • unordered_mapからキーと値のリストを取得する

    質問 リストを取得する最も効率的な方法は何でしょうか ( vector のキーと値のリスト () を得る最も効率的な方法は何ですか? unordered_map ? 具体的に、問題のマップが unordered_map&lt;string, double&gt; . であるとすると、そのキーを vector&lt;string&gt; として、そして値は vector&lt;do

    2023-09-26 02:26:26
  • C++でtypedefはいつ使うべきですか?

    質問 私の長年の C++ (MFC) プログラミングにおいて、私は一度も typedef を使用する必要性を感じたことはなく、そのため、それが何のために使用されるのかよくわかりません。どこで使うべきなのでしょうか?また、実際に typedef を使うのが望ましいのでしょうか?それとも、これは本当に C 言語特有のキーワードなのでしょうか? どのように解決するのですか? テンプレ

    2023-09-25 16:35:38