• [解決済み】C++でfloatのround()

    質問 簡単な浮動小数点の丸め関数が欲しいのですが。 double round(double); round(0.1) = 0 round(-0.1) = 0 round(-0.9) = -1 を見つけることができます。 ceil() と floor() を追加しました。 round() . C++の標準ライブラリに別の名前で存在するのか、それとも欠落しているのでしょうか?

    2022-04-02 09:15:36
  • [解決済み】配列のインデックスの代わりにイテレータを使用する理由は?

    質問 次の2行のコードを例にとります。 for (int i = 0; i < some_vector.size(); i++) { //do stuff } そして、これ。 for (some_iterator = some_vector.begin(); some_iterator != some_vector.end(); some_iterator++

    2022-04-02 07:53:11
  • [解決済み】デストラクタで例外を投げてはいけない場合、その中のエラーはどのように処理するのでしょうか?

    質問 ほとんどの人がこう言います。 決して デストラクタで例外を発生させると、未定義の動作になります。Stroustrupは次のように指摘する。 ベクトルデストラクタは、すべての要素に対して明示的にデストラクタを呼び出します。これは、もし要素のデストラクタが投げたら、ベクターの破壊は失敗することを意味します... デストラクタから投げられる例外から保護する良い方法は本当にないので、ラ

    2022-04-02 06:22:24
  • [解決済み】C++でstd::stringからスペースを取り除く

    質問 C++で文字列からスペースを取り除くには、どのような方法が好ましいですか?すべての文字をループして新しい文字列を作ることもできますが、もっと良い方法があるのでしょうか? どのように解決するのですか? 一番良いのは、アルゴリズムを使うことです。 remove_if とispaceを使用します。 remove_if(str.begin(), str.end(), isspa

    2022-04-02 05:25:23
  • [解決済み】C++やCでfoo(void)とfoo()は違うのですか?

    質問 次の2つの関数定義について考えてみよう。 void foo() { } void foo(void) { } この2つは何か違いがあるのでしょうか?もしそうでないなら、なぜ void の議論があるのでしょうか?美的な理由? 解決方法は? で C : void foo() は関数を意味します。 foo 不特定の型の不特定の数の引数を取ること。

    2022-04-02 02:20:35
  • [解決済み] [Solved] プログラムが実行されているディレクトリを取得するには?

    質問 C/C++でプログラムを実行しているディレクトリのフルパスを取得する、プラットフォームやファイルシステムにとらわれない方法はありますか?カレントワーキングディレクトリと混同しないように。(clibやSTLのような標準的なものでない限り、ライブラリの提案はご遠慮ください) (プラットフォーム/ファイルシステムに依存しない方法がない場合、特定のファイルシステムに対してWindowsやL

    2022-04-02 02:06:31
  • [解決済み】sizeof(あるポインタ)は常に4と同じか?

    質問 例えば sizeof(char*) は4を返します。 同様に int* , long long* は、私が試したすべてのもの。 何か例外があるのでしょうか? 解決方法を教えてください。 得られる保証は sizeof(char) == 1 . その他の保証はありません。 sizeof(int *) == sizeof(double *) . 実際には、ポインタのサ

    2022-04-02 01:46:55
  • [解決済み】f(i = -1, i = -1)の挙動が未定義なのはなぜ?

    質問 について読んでいました。 評価順の違反 という例を挙げています。 <ブロッククオート 1) スカラーオブジェクトに対する副作用が、同じスカラーオブジェクトに対する別の副作用に対して非シーケンスである場合、その動作は不定となる。 // snip f(i = -1, i = -1); // undefined behavior この文脈では i は スカラ

    2022-04-01 20:29:26
  • [解決済み】std::unique_ptr<T>はTの完全な定義を知るために必要なのでしょうか?

    質問 ヘッダーに次のようなコードがあります。 #include &lt;memory&gt; class Thing; class MyClass { std::unique_ptr&lt; Thing &gt; my_thing; }; このヘッダを含まないcppでインクルードすると Thing の型定義は、VS2010-SP1ではコンパイルできません。 1&

    2022-04-01 19:03:23
  • [解決済み】コンストラクタの継承

    質問 なぜこのようなコードになるのでしょうか。 class A { public: explicit A(int x) {} }; class B: public A { }; int main(void) { B *b = new B(5); delete b; } 結果、これらのエラーが発生します。 main.cpp: 関数 'in

    2022-04-01 18:30:58
  • [解決済み】C++11のラムダは、なぜデフォルトでcapture-by-valueに "mutable "キーワードを要求するのでしょうか?

    質問 簡単な例です。 #include &lt;iostream&gt; int main() { int n; [&amp;](){n = 10;}(); // OK [=]() mutable {n = 20;}(); // OK // [=](){n = 10;}(); // Error: a by-v

    2022-04-01 18:04:52
  • [解決済み】STLにおけるvectorとlistの比較

    質問 Effective STLで気づいたのですが ベクトルはシーケンスの種類として がデフォルトで使用されるべきです。 どういう意味ですか?どうやら、効率性を無視した vector は何でもできる。 どなたか、次のようなシナリオを提案していただけませんか? vector は実行可能なオプションではありませんが list を使わなければならないのですか?

    2022-04-01 16:19:05
  • [解決済み】クラスデータメンバー "::*" へのポインタ

    質問 私はこの奇妙なコードスニペットを見つけたのですが、うまくコンパイルできます。 class Car { public: int speed; }; int main() { int Car::*pSpeed = &amp;Car::speed; return 0; } なぜ C++では、クラスの非静的データメンバへのこのポインタがあるのでし

    2022-04-01 16:02:04
  • [解決済み】C++で大きなバッファをバイナリファイルに高速に書き込むには?

    質問 SSD(solid state drive)に大容量のデータを書き込もうとしています。大量というのは80GBのことです。 解決策をウェブで見て回りましたが、一番良かったのはこれでした。 #include &lt;fstream&gt; const unsigned long long size = 64ULL*1024ULL*1024ULL; unsigned long long

    2022-04-01 15:33:07
  • [解決済み】揮発性のあるものはなぜ存在するのか?

    質問 とは何ですか? volatile キーワードは何ですか?C++ではどのような問題を解決するのでしょうか? 私の場合、意図して必要としたことはありません。 解決方法は? volatile は、例えば、全く別のプロセス/デバイス/何々が書き込む可能性のあるメモリ上のスポットから読み取る場合に必要です。 以前、マルチプロセッサ・システムでデュアル・ポート・ラムをストレート

    2022-04-01 10:27:01
  • [解決済み】メンバー初期化リストの使用を推奨する理由は?

    質問 私はコンストラクタでメンバ初期化リストを使うのが好きなのですが、その理由をずっと忘れていました。 あなたは、コンストラクターにメンバー初期化リストを使用しますか?使っている場合、その理由は何ですか?使っていない場合は、その理由を教えてください。 解決方法は? 対象 POD クラス・メンバの場合は、スタイルの問題に過ぎず、違いはありません。 クラスであるクラス・メンバ

    2022-04-01 09:46:42
  • [解決済み】C++で(-2147483648> 0)がtrueを返す?

    質問 -2147483648は32ビットの整数型では最小の整数ですが、この整数型ではオーバーフローするようです。 if(...) という文章があります。 if (-2147483648 &gt; 0) std::cout &lt;&lt; "true"; else std::cout &lt;&lt; "false"; これは、次のように表示されます。 true

    2022-04-01 08:50:18
  • [解決済み】C++で "delete this "は許されるのか?

    質問 を行うことは可能ですか? delete this; もし、delete-statement がそのクラスのインスタンスに対して実行される最後のステートメントであるなら?もちろん、そのクラスのインスタンスに対して this -ポインタは new リ作成される。 というようなことを考えています。 void SomeModule::doStuff() { // in th

    2022-04-01 07:40:58
  • [解決済み】ラムダ関数はテンプレート化できる?

    質問 C++11では、ラムダ関数をテンプレート化する方法はあるのでしょうか?それとも、テンプレート化するには、本質的に特殊すぎるのでしょうか? 代わりに古典的なテンプレート化されたクラス/ファンクタを定義できることは理解していますが、問題はむしろ、この言語がラムダ関数をテンプレート化することを許可しているかどうかということです。 どのように解決するのですか? 2018年にUPDA

    2022-04-01 05:53:42
  • [解決済み】assert関数とは何ですか?

    質問 OpenCVのチュートリアルを勉強していたら assert という関数がありますが、これは何をするものですか? どのように解決するのですか? assert は、引数が偽であることが判明した場合、プログラムを終了させます (通常、assert 文を引用したメッセージを表示します)。これはデバッグ時に、予期せぬ事態が発生した場合にプログラムが失敗することをより明確にするために

    2022-04-01 05:22:47