• [解決済み】C++ 派生クラス内の関数に対する "virtual "キーワード。必要ですか?

    質問 以下のような構造体の定義がある場合、... struct A { virtual void hello() = 0; }; アプローチその1 struct B : public A { virtual void hello() { ... } }; アプローチその2 struct B : public A { void hello() { ..

    2022-04-01 03:47:37
  • [解決済み】C++の'override'キーワードは何のために使うのですか?重複

    質問 この質問はすでにここに回答があります : override' キーワードは、オーバーライドされた仮想メソッドをチェックするだけのものですか? (回答6件)

    2022-04-01 03:10:23
  • [解決済み】テンプレートのテンプレート・パラメーターの使い方は?

    質問 C++でテンプレート・パラメータ(テンプレートをパラメータとして受け取るテンプレート)を使って、ポリシーベースのクラス設計を行う例をいくつか見ました。このテクニックには他にどんな使い道があるのでしょうか? どのように解決するのですか? このようにテンプレートに依存した型を持つパラメータを渡すには、テンプレート構文を使う必要があると思います。 template <temp

    2022-03-31 23:44:20
  • [解決済み】delete[]は、オペランド配列のサイズをどのように「知って」いるのでしょうか?

    質問 Foo* set = new Foo[100]; // ... delete [] set; に配列の境界を渡さない。 delete[] . しかし、その情報はどこに保存されているのでしょうか?標準化されているのでしょうか? どのように解決する? ヒープ上にメモリを割り当てるとき、アロケータはどれだけのメモリを割り当てたかを記録します。これは通常、割り当てられたメモリの直前

    2022-03-31 23:04:41
  • [解決済み】なぜC++にはガベージコレクタがないのですか?

    質問 この質問は、まずガベージコレクションの是非を問うものではありません。 Bjarne Stroustrupが、C++はいつかはガベージコレクタを持つことになるだろうと発言していることを知っているからです。 そうはいっても、なぜ追加されないのでしょうか? C++用のガベージコレクタはすでにいくつかあります。 これは単に「言うは易く行うは難し」なのでしょうか? あるいは、追加されない(C

    2022-03-31 22:47:17
  • [解決済み】C++で配列の全要素を1つのデフォルト値で初期化する?

    質問 C++のノート。配列の初期化 には、配列の初期化に関する素晴らしいリストがあります。私は int array[100] = {-1}; 1で埋め尽くされると思っていたが、そうではなく、最初の値だけがそうで、残りは0とランダムな値が混ざっている。 コード int array[100] = {0}; は正常に動作し、各要素に0をセットします。 何を見逃している

    2022-03-31 22:25:21
  • [解決済み】unique_ptrとshared_ptrの違い【重複あり

    質問 この質問はすでにここに回答があります : 閉じる 10年前 . <ブロッククオート 重複の可能性があります。 pimpl: shared_ptrまたはunique_ptr スマートポインター(boost)の説明 shared

    2022-03-31 19:37:02
  • [解決済み】カスタムイテレータとconst_iteratorを正しく実装する方法は?

    質問 カスタム・コンテナ・クラスがあり、そのコンテナ・クラスに対して iterator と const_iterator クラスがあります。 私はこれをやったことがなく、適切なハウツーを見つけることができませんでした。イテレータの生成に関するガイドラインや、注意すべき点は何ですか? また、コードの重複を避けたい(と感じるのは const_iterator と itera

    2022-03-31 18:13:31
  • [解決済み】未使用の変数に関する警告を表示させないようにするには?

    質問 クロスプラットフォームのアプリケーションを使用していますが、いくつかの関数で、関数に渡された値がすべて利用されていません。 そのため、GCCから、未使用の変数があるという警告を受けました。 この警告を回避するにはどのようなコーディングが良いでしょうか? 関数を#ifdefで囲む? #ifdef _MSC_VER void ProcessOps::sendToExternalA

    2022-03-31 15:33:26
  • [解決済み】char配列を文字列に変換する方法は?

    質問 C++を変換する string を文字配列に変換するのは、非常に簡単です。 c_str という文字列の関数を実行し、さらに strcpy . しかし、その逆を行うにはどうすればよいのでしょうか。 のようなchar配列を持っています。 char arr[ ] = "This is a test"; に変換して戻す。 string str = "This is a test

    2022-03-31 12:34:44
  • [解決済み】forループで型の異なる2つの変数を宣言することは可能ですか?

    質問 C++のforループの初期化本体で、型の異なる2つの変数を宣言することは可能でしょうか? 例えば for(int i=0,j=0 ... は2つの整数を定義しています。を定義することはできますか? int と char を初期化ボディの中に入れることができますか?これはどのように行われるのでしょうか? どのように解決するのですか? C++17 : Ye

    2022-03-31 11:48:19
  • [解決済み】==と!=は相互に依存しあっている?

    質問 C++で演算子のオーバーロードについて学んでいるのですが、以下のようなことがわかります。 == と != は、ユーザー定義型のためにカスタマイズできる特殊な関数に過ぎません。しかし、私の懸念は、なぜ 2つの別々の の定義が必要なのでしょうか?私は、もし a == b が真であれば a != b は自動的に偽となり、その逆もまた然りで、それ以外の可能性はありません、

    2022-03-31 11:32:02
  • [解決済み】switch文が文字列に適用できない理由とは?

    質問 以下のコードをコンパイルすると、以下のエラーが発生します。 type illegal . int main() { // Compilation error - switch expression of type illegal switch(std::string("raj")) { case"sda": } } のどちらにも文字列を使

    2022-03-31 09:43:59
  • [解決済み】コンストラクタの初期化リストの評価順序について

    質問 いくつかの引数を取るコンストラクタがあります。 リストされた順序で構築されるものと思っていましたが、あるケースでは逆に構築され、アボートされたようです。引数を逆にすると、プログラムがアボートしなくなりました。 これは私が使っている構文の一例です。 この場合、a_はb_の前に初期化される必要があります。 構築の順序を保証できますか? 例 class A { public:

    2022-03-31 02:39:42
  • [解決済み】std::string_viewはconst std::string& よりも具体的にどのように速いのでしょうか?

    質問 std::string_view は C++17 で採用され、その代わりにこれを使用することが広く推奨されています。 const std::string& . その理由のひとつは、パフォーマンスです。 どなたか、どのように まさに std::string_view よりも高速になります。 const std::string& をパラメータ型として

    2022-03-31 01:47:12
  • [解決済み】無名名前空間が使用される理由とその利点は何ですか?

    質問 私は新しいC++ソフトウェアプロジェクトに参加したばかりで、設計を理解しようとしています。 このプロジェクトでは、無名の名前空間が頻繁に使用されています。 例えば、クラス定義ファイルでは次のようなことが起こります。 // newusertype.cc namespace { const int SIZE_OF_ARRAY_X; const int SIZE_OF_ARRAY_

    2022-03-30 23:48:20
  • [解決済み】uintptr_tデータ型とは?

    質問 とは何ですか? uintptr_t また、どのような用途に使用できるのでしょうか? どのように解決するのですか? uintptr_t は、データポインタを格納することができる符号なし整数型です。 つまり、一般的にはポインタと同じ大きさであることを意味する。 C++11以降の規格で任意に定義されています。 アーキテクチャのポインタ型を保持できる整数型が必要な一般的

    2022-03-30 23:04:12
  • [解決済み】std::mapからすべてのキー(または値)を取得し、それらをベクトルに入れるには?

    質問 これは、私の出方として考えられることの一つです。 struct RetrieveKey { template <typename T> typename T::first_type operator()(T keyValuePair) const { return keyValuePair.first; } }; map&

    2022-03-30 20:34:25
  • [解決済み】カスタムオブジェクトのベクターをソートする

    質問 カスタム(ユーザー定義)オブジェクトを含むベクターをどのようにソートするのですか? おそらく、標準的なSTLアルゴリズム ソート と共に、カスタムオブジェクトのフィールドの1つ(ソートのためのキーとして)を操作する述語(関数または関数オブジェクト)が使用されるべきです。 私は正しい道を歩んでいるのでしょうか? どのように解決するのですか? を使った簡単な例で

    2022-03-30 18:26:39
  • [解決済み】malloc()とfree()はどのように動作するのですか?

    質問 を知りたい。 malloc と free の作業を行います。 int main() { unsigned char *p = (unsigned char*)malloc(4*sizeof(unsigned char)); memset(p,0,4); strcpy((char*)p,"abcdabcd"); // **deliberately stor

    2022-03-30 18:18:38