• C++11のラムダで参照を参照で捕捉する

    質問 これを考えてみましょう。 #include <functional> #include <iostream> std::function<void()> make_function(int& x) { return [&]{ std::cout << x << std::endl; }; } in

    2023-09-16 22:12:14
  • C++11 "auto "セマンティクス

    質問 C++11を使用する場合 auto を使用する場合、値または参照に解決されるかどうかに関して、型控除のルールは何ですか? 例:時々、明らかになります。 auto i = v.begin(); // Copy, begin() returns an iterator by value これらはあまり明確ではありません。 const std::shared_ptr<F

    2023-09-16 14:57:25
  • qsortとstd::sortの性能比較?

    質問 Scott Meyers によると、彼の Effective STL book - item 46. 彼は次のように主張しています。 std::sort よりも約670%高速です。 std::qsort の方が約70%高速です。自分でテストしてみたところ、qsortの方が速いことがわかりました :( ! この奇妙な動作を説明するために、誰かが私を助けることができますか?

    2023-09-16 13:04:20
  • C++ のクラスイニシャライザで const 配列を初期化する

    質問 C++で以下のようなクラスがあります。 class a { const int b[2]; // other stuff follows // and here's the constructor a(void); } 問題は、コンストラクタの関数本体の中では初期化できないので、初期化リストでどのようにbを初期化するかです。bは const

    2023-09-15 19:34:05
  • なぜランタイムポリモーフィズムはコンパイル時に解決できないのか?

    疑問点 考えてみてください。 #include<iostream> using namespace std; class Base { public: virtual void show() { cout<<" In Base \n"; } }; class Derived: public Base { public:

    2023-09-15 11:24:29
  • 関数ポインタの再参照はどのように行われるのですか?

    質問 関数ポインタの再参照は、なぜ、どのように、ただ "何もしない" するのですか? これは私が言っていることです。 #include<stdio.h> void hello() { printf("hello"); } int main(void) { (*****hello)(); } コメントより はこちら : <ブロッククオー

    2023-09-14 21:10:52
  • プリプロセッサでブーリアン演算子は使えますか?

    質問 プリプロセッサで OR または AND ステートメントを持つことは可能でしょうか? 私は私が下で実行したいこのコードを持っている _DEBUG または _UNIT_TEST というタグ(?)があります。 私が欲しいのは、以下のようなものです。 #if _DEBUG || _UNIT_TEST //Code here #endif これが不可能な場合、同じことを実

    2023-09-14 19:40:55
  • static_warning は存在しますか?

    質問 私が知っているのは この質問 でBoostの"STATIC WARNING"について触れていますが、具体的にどのように実装すればいいのか、改めて質問したいと思います。 static_warning と同じように動作する static_assert と同じように動作しますが 警告 を出すだけで、コンパイル時のエラーは発生しません。 私は、C++11 以前の Al

    2023-09-14 05:35:15
  • マクロで1と0を定義するのに、なぜ三項演算子が使われるのですか?

    質問 私は組み込みプロジェクトのために SDK を使用しています。このソースコードの中に、少なくとも私は奇妙だと思うコードを見つけました。SDK の多くの場所で、この形式のソース コードがあります。 #define ATCI_IS_LOWER( alpha_char ) ( ( (alpha_char >= ATCI_char_a) && (alpha_char &

    2023-09-14 05:34:21
  • Qtで経過時間を取得する

    質問 私はQtにおいて GetTickCount() のように、コードのセグメントが実行されるのにかかる時間を測定できるようなものを。 uint start = GetTickCount(); // do something.. uint timeItTook = GetTickCount() - start; 何か提案はありますか? どのように解決するのですか? どの

    2023-09-14 03:43:34
  • fatal error: filesystem: そのようなファイルやディレクトリはありません[closed]。

    質問 終了 . この質問には 詳細または明確さ . 現在、回答は受け付けておりません。 この質問を改善したいですか? 詳細を追加して、問題を明確にするには この投稿を編集する . 終了 5 年前

    2023-09-13 20:23:05
  • boost::shared_ptrの取得について

    質問 私は boost:shared_ptr を多用しています。実際、ヒープ上に確保されるオブジェクトのほとんどは shared_ptr . 残念ながら、これは私が this を受け取る関数に shared_ptr . このコードを考えてみましょう。 void bar(boost::shared_ptr<Foo> pFoo) { ... } void Fo

    2023-09-12 08:34:31
  • extern "C++"』を使う理由は?

    質問 この中で 記事 では、キーワード extern の後に "C" または "C++" を続けることができます。 なぜ「extern "C++"」を使うのでしょうか? 実用的なのでしょうか? どのように解決するのですか? 言語が許します。 extern "C" { #include "foo.h" } foo.hにC++のリンクが必要なものが含まれていたらどうし

    2023-09-11 17:09:33
  • ゼロと比較する際の int 演算子 != および == について

    質問 ゼロか非ゼロかを調べるのに、!=と==は最速の方法ではないことがわかりました。 bool nonZero1 = integer != 0; xor eax, eax test ecx, ecx setne al bool nonZero2 = integer < 0 || integer > 0; test ecx, ecx setne al bool zero1 =

    2023-09-11 16:56:09
  • C++でintを継承できないのはなぜですか?

    疑問点 こんなことができたらいいな。 class myInt : public int { }; どうしてダメなんだろう? なぜそうしたいのか?より強力な型付け。例えば、2つのクラスを定義することができます intA と intB というように intA + intA または intB + intB でなく intA + intB . intはクラスではありま

    2023-09-11 01:59:49
  • vectorとmap、どちらを使うか?

    質問 コンテナ内の想定要素数が比較的少ない場合は std::vector の代わりに std::map の代わりに コンテナを使用します。 この背後にある本当の理由は何でしょうか? 明らかに、ルックアップのパフォーマンスは std::map よりも悪くなることはありえません。 std::vector (ナノ秒/マイクロ秒の差はあるかもしれませんが)なので、メモリ使用量

    2023-09-10 23:14:53
  • inline vs __inline vs __inline__ vs __forceinline?

    質問 4つのインライン(キーワード)の違いは何ですか? inline , __inline , __inline__ , __forceinline . どのように解決するのですか? inline は は キーワードで、C++ や C99 では __inline はベンダ固有のキーワードです(例えば MSVC ) で、C89 にはないので、C のインラ

    2023-09-10 18:01:19
  • C++による効率的なスレッドセーフシングルトン

    質問 シングルトン・クラスの通常のパターンは次のようなものです。 static Foo &getInst() { static Foo *inst = NULL; if(inst == NULL) inst = new Foo(...); return *inst; } しかし、私の理解では、この解決策はスレッドセーフではありません。) Foo の

    2023-09-10 17:11:52
  • int a = b * (c * d * + e)ここでコンパイラは何をするのですか?[重複]する

    質問 この質問はすでにここに回答があります : 単項のプラス演算子は何をするのですか? (回答15件) 終了 6年前 . 私のプ

    2023-09-10 12:25:31
  • 利用可能なメモリを取得する方法 C++/g++?

    質問 私は、利用可能なメモリに応じてバッファを割り当てたいと思います。そのような場合、私が処理を行い、メモリ使用量が増加しても、まだ利用可能なメモリの制限内にとどまります。利用可能なメモリを取得する方法はありますか (私は、仮想または物理メモリのステータスが違いを生むかどうかわかりません?)。Windows、OS X、Linux、AIXで使用する予定なので、方法はプラットフォームに依存しない

    2023-09-10 02:55:51