• [解決済み】C++構造体のメンバはデフォルトで0に初期化されますか?

    質問 私はこれ struct : struct Snapshot { double x; int y; }; 欲しい x と y はデフォルトで0になるのでしょうか、それともしなければならないのでしょうか。 Snapshot s = {0,0}; その他、構造をゼロにする方法とは? 解決するには? 構造体を初期化しないとNULLにならない。

    2022-04-06 13:09:38
  • [解決済み】C++におけるstaticキーワードとその様々な使用法

    質問 キーワード static C++ではいくつかの意味があり、私は非常に混乱し、実際にどのように動作することになっているのか、自分の考えを曲げることができません。 私が理解したところでは static ストレージの持続時間、つまりグローバルの場合はプログラムの寿命まで続きますが、ローカルの場合はデフォルトでゼロ初期化されているということですね。 C++規格では、クラスのデー

    2022-04-06 10:25:07
  • [解決済み】マップを反復しながら削除する方法とは?

    質問 マップを反復しながら削除するには? みたいな感じです。 std::map<K, V> map; for(auto i : map) if(needs_removing(i)) // remove it from the map もし私が map.erase イテレータを無効にしてしまいます。 解決方法は? 標準的な連想配列コンテナ

    2022-04-06 05:53:41
  • [解決済み】std::decayとは何ですか、またどのような場合に使用するのですか?

    質問 が存在する理由は何でしょうか? std::decay ? どのような場面で std::decay は有用ですか? 解決方法は? <サブ ジョークです。 std::atomic を非放射性のものに変えることができます。 N2609 を提案した論文です。 std::decay . この論文では、次のように説明しています。 簡単に言うと de

    2022-04-06 05:24:10
  • [解決済み】スタック巻き戻しとは何ですか?

    質問 スタック巻き戻しとは何ですか?検索してみたのですが、納得のいく答えが見つかりませんでした。 どのように解決するのですか? スタックの巻き戻しは、通常、例外処理と関連して語られます。以下はその例です。 void func( int x ) { char* pleak = new char[1024]; // might be lost => memory leak

    2022-04-06 04:57:26
  • [解決済み】C++のVectorをforループで反復処理する。

    質問 C++言語初心者です。ベクトルを使うようになってから、ベクトルをインデックスで反復処理するすべてのコードで、最初のパラメータである for ループは常にベクターに基づいた何かです。Javaでは、ArrayListでこのようなことをするかもしれません。 for(int i=0; i < vector.size(); i++){ vector[i].doSomething

    2022-04-06 02:50:28
  • [解決済み】仮想関数と純粋仮想関数の違い【重複あり

    質問 この質問はすでにここに回答があります : バーチャル/ピュアバーチャルの説明 (回答12件) 閉店 2年前 . 純粋仮想関

    2022-04-05 23:16:13
  • [解決済み】C++でネストした型/クラスの前方宣言

    質問 最近、このような状況に陥りました。 class A { public: typedef struct/class {…} B; … C::D *someField; } class C { public: typedef struct/class {…} D; … A::B *someField; } 通常はクラス名を宣言します。 class

    2022-04-05 22:24:25
  • [解決済み】ポインタとリファレンス

    質問 関数に元の変数を与える場合、どのようにしたらよいでしょうか。 unsigned long x = 4; void func1(unsigned long& val) { val = 5; } func1(x); または void func2(unsigned long* val) { *val = 5; } func2(&

    2022-04-05 21:45:22
  • [解決済み】C++の「long」、「long long」、「long int」、「long long int」の違いは?

    質問 JavaからC++に移行しているのですが、その際に質問したいことがあります。 long というデータ型があります。Javaでは、2以上の整数を保持するために 32 と書くだけです。 long x; . しかし、C++では、どうやら long はデータ型であると同時にモディファイアでもあります。 を使用する方法はいくつかあるようです。 long : long x; lon

    2022-04-05 19:06:41
  • [解決済み】スマートポインタ(boost)の説明

    質問 次のポインターのセットは何が違うのでしょうか?それぞれのポインターをプロダクションコードで使用するとしたら、どのような場合ですか? 例を挙げていただけるとありがたいです。 scoped_ptr shared_ptr weak_ptr intrusive_ptr プロダクションコードでboostを使用していますか? どのように解決するのです

    2022-04-05 13:55:15
  • [解決済み】C++のforward宣言とは何ですか?

    質問 で。 http://www.learncpp.com/cpp-tutorial/19-header-files/ を記載しています。 add.cpp: int add(int x, int y) { return x + y; } main.cppです。 #include <iostream> int add(int x, int y); /

    2022-04-05 12:44:42
  • [解決済み】C++の文字列から最後の文字を削除する

    質問 C++の文字列から最後の文字を削除するにはどうしたらいいですか? 試しに st = substr(st.length()-1); しかし、それはうまくいきませんでした。 解決方法は? 変異しないバージョンの場合。 st = myString.substr(0, myString.size()-1);

    2022-04-05 10:39:34
  • [解決済み】11000行のC++ソースファイルはどうすればいいのか?

    質問 私たちのプロジェクトには、この巨大な(11000行もある?)mainmodule.cppのソースファイルがあり、私はそれを触るたびにぞっとするのです。 このファイルは非常に中心的で大きいので、どんどんコードが蓄積されていき、実際に縮小し始める良い方法が思いつきません。 このファイルは、私たちの製品のいくつかの(> 10)保守バージョンで使用され、活発に変更されているので、

    2022-04-05 09:54:51
  • [解決済み】ifstreamを手動で閉じる必要がありますか?

    質問 を手動で呼び出す必要がありますか? close() を使用した場合 std::ifstream ? 例えば、コードでは std::string readContentsOfFile(std::string fileName) { std::ifstream file(fileName.c_str()); if (file.good()) { std::

    2022-04-05 08:55:11
  • [解決済み】文字列の一部を別の文字列で置換したい

    質問 C++で文字列の一部を別の文字列に置き換えることは可能ですか? 基本的には、このようなことを行いたいと考えています。 QString string("hello $name"); string.replace("$name", "Somename"); でも、Standard C++のライブラリは使いたい。 どのように解決するのですか? 文字列の中の部分文字列を検索

    2022-04-05 06:01:23
  • [解決済み】関数ポインタの定義にアンパサンド '&' やアスタリスク '*' がいくつあっても大丈夫なのはなぜですか?

    質問 なぜ、次のような仕組みになっているのでしょうか? void foo() { cout << "Foo to you too!\n"; }; int main() { void (*p1_foo)() = foo; void (*p2_foo)() = *foo; void (*p3_foo)() = &foo; void

    2022-04-05 05:26:51
  • [解決済み】インライン関数を使用する場合と使用しない場合とは?

    質問 インラインはコンパイラへのヒントまたはリクエストであり、関数呼び出しのオーバーヘッドを回避するために使用されることは知っています。 では、ある関数がインライン化の候補であるかどうかは、何を基準に判断すればよいのでしょうか? どのような場合にインライン化を避けるべきでしょうか? 解決方法は? 関数呼び出しのコストを回避することは、物語の半分に過ぎません。 を行う。

    2022-04-05 05:09:48
  • [解決済み】std::vectorは普通の配列よりそんなに遅いの?

    質問 というのが一般的な常識だと思っていました。 std::vector は、配列として実装されています。今日、私はそれをテストし、そしてそれはそうではないようです。 以下はテスト結果です。 UseArray completed in 2.619 seconds UseVector completed in 9.284 seconds UseVectorPushBack comple

    2022-04-05 01:44:24
  • [解決済み】C++で名前空間を正しく使うには?

    質問 私はJava出身で、名前空間ではなくパッケージが使用されています。私は、一緒に動作して完全なオブジェクトを形成するクラスをパッケージに入れ、後でそのパッケージからそれらを再利用することに慣れています。しかし、今はC++で仕事をしています。 C++で名前空間はどのように使うのですか?アプリケーション全体に対して1つの名前空間を作るのか、それとも主要なコンポーネントに対して名前空間を作

    2022-04-04 22:03:01