問題タブ [c++11]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 新しいC++標準の開発をどこで追跡しますか?
一般的に、C ++の開発、最も重要なのは、新しい標準とその近似/スケジュールされたリリースデータの開発をどこで探しますか?またブースト(まあ、boost.com)
一元化された場所はありますか?
どうも
c++ - C ++ 0xのノイズ、肥大化、および移植性
最初は、次のC ++ 0x標準を見たとき、私は喜んでいました。悲観的ではありませんでしたが、今それを考えると、少し希望が薄れています。
主に3つの理由があります。
- 多くのブースト肥大化(これは絶望的なコンパイル時間を引き起こす必要がありますか?)、
- 構文は長いようです(私が最初に望んでいたほどPythonicではありません)。
- 私は携帯性と他のプラットフォーム(iPhone、Xbox、Wii、Mac)に非常に興味がありますが、「標準」が十分に携帯可能になるまでに時間がかかるという非常に現実的なリスクはありませんか?
#3はリスクが少ないと思います。これは、過去10年間にテンプレートから学んだ教訓です。しかし、悪魔は細部に宿っています。
編集2(気まぐれを少なくしよう):企業が規格の最初の発効年にC ++ 0xに移行するのは安全だと思いますか、それとも大きなリスクに関連しますか?
c++ - std:threadがC ++ Oxになると、pthreadは廃止されますか
もちろん、それを維持しますが、C ++標準が保証されれば、それはどれほど役立つでしょう。
新しい標準の出現による同期プリミティブ(Mutex、条件変数)はどうですか?
std :: threadとは対照的に、pthreadをマスターするのは難しいと思いますか?
c++ - 使用中にブースト機能を削除する
boost::functionとboost::bind(実際にはstd :: tr :: functionとbind)がまだ使用中に削除されている状況があります。これは安全ですか?私は通常それを避けますが、問題のあるコードは少し定着していて、私の唯一の他のオプションは新しいスレッドを追加することです。
バインドされたパラメーターは常にプレーンな整数型(実際のコードではintとポインター)であり、参照ではありません。
c++ - nullptrとは正確には何ですか?
現在、多くの新機能を備えた C++11 があります。(少なくとも私にとっては) 面白くて紛らわしいのは newnullptr
です。
まあ、厄介なマクロはもう必要ありませんNULL
。
それでも、私はどのようにnullptr
機能するのかわかりません。たとえば、ウィキペディアの記事には次のように書かれています。
C++11 では、null ポインター定数として機能する新しいキーワードnullptr を導入することで、これを修正しています。これはnullptr_t 型であり、暗黙的に変換可能であり、任意のポインター型またはメンバーへのポインター型と比較できます。bool を除いて、暗黙的に変換したり、整数型と比較したりすることはできません。
それはどのようにキーワードであり、型のインスタンスですか?
nullptr
また、古き良きよりも優れている別の例(ウィキペディアのもの以外)はあり0
ますか?
c++ - C、C++、C++0x、pthread、boost のスレッド
C/C++ のスレッドに関する質問...
C++0x 構文
スレッドはいくつありますか? 2 つ (x と y) または 3 つ (x、y とメイン)? this_thread::yield()
メインで呼んでもいいですか?this_thread::get_id()
そして、メインで呼び出すと何が得られますか?
pthread 構文
スレッドはいくつありますか? 2 つ (x と y) または 3 つ (x、y とメイン)? pthread_yield()
メインで呼んでもいいですか?pthread_self()
そして、メインで呼び出すと何が得られますか?
ブースト構文
スレッドはいくつありますか? 2 つ (x と y) または 3 つ (x、y とメイン)? boost::this_thread::yield()
メインで呼んでもいいですか?boost::this_thread::get_id()
そして、メインで呼び出すと何が得られますか?
c++ - 右辺値へのconst参照バインディング
この質問に取り組んでいると、一貫性のない動作が見つかりました。
コンストラクターで参照バインディングの動作が一般的な関数と異なるのはなぜですか?
厳密なC++03モードでC++0x拡張機能を無効にしてg++-4.1とComeau4.2.45.2を使用してC++03でテストしました。同じ結果が得られました。
C ++ 0xの場合、g++-4.4およびComeau4.3.9をリラックスモードで使用し、C++0x拡張機能を有効にしてテストしました。同じ結果が得られました。
c++ - 戻り値はc ++ 0xで右辺値参照によって渡されますか?
関数があるとしましょう:
C++0x は、偽のコピーが randomVector の戻り値から回避されると具体的に言っていますか? それとも、コンパイラは RVO を実装する必要がありますか? 値randomVector()
を右辺値として扱う必要があるため、v の移動コンストラクターを呼び出す必要があるように思えますが、これが正しいかどうかは完全にはわかりません。
c++ - unordered_set の代わりに set を使用するのはなぜですか?
C++0x は、および他の多くの場所unordered_set
で利用できるようになっています。boost
私が理解しているのは、ルックアップの複雑さunordered_set
を持つハッシュテーブルです。O(1)
一方、ルックアップの複雑さset
を持つツリーに他なりません。なぜ一体誰がの代わりに使うのでしょうか? つまり、もう必要ですか?log(n)
set
unordered_set
set
c++ - C ++ 0xコンセプトとブーストコンセプトチェックライブラリ(BCCL)の違いは何ですか?
ConceptsはC++0x標準を作成しませんでしたが、BoostはBoost Concept Check Library(BCCL)を提供します。BCCLは、C++0x標準に含まれることを意図したすべてを網羅しているわけではないと思います。BCCLと提案されたC++0xソリューションの違いは何ですか?