タグ付けされた質問 「c++」

C ++は汎用プログラミング言語です。もともとCの拡張として設計され、構文は似ていますが、現在は完全に異なる言語になっています。このタグは、C ++コンパイラでコンパイルされる(される)コードに関する質問に使用します。特定の標準リビジョン[C ++ 11]、[C ++ 14]、[C ++ 17]または[C ++ 20]などに関連する質問には、バージョン固有のタグを使用します。

8
C ++でstd :: vectorを返す効率的な方法
関数でstd :: vectorを返すときにコピーされるデータの量、およびstd :: vectorを(ヒープ上の)フリーストアに配置して、代わりにポインターを返す最適化の大きさは次のとおりです。 std::vector *f() { std::vector *result = new std::vector(); /* Insert elements into result */ return result; } よりも効率的: std::vector f() { std::vector result; /* Insert elements into result */ return result; } ?


2
Visual C ++ 2008 Express Download Link Dead?[閉まっている]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? Stack Overflowのトピックとなるように質問を更新します。 7年前休業。 この質問を改善する 私が現在取っているプログラミングクラスはVisual C ++ 2008を使用しており、自宅で作業するために、エクスプレス版を入手するオプションがあります。ダウンロードリンクがWebサイトのどこにも見つかりません。マイクロソフトのサポートはまったく役に立ちませんでした。Visual C ++ 2010だけを使用することも検討しましたが、互換性が機能する可能性はあまりないと聞きました。Visual Studio 2008 Express ISOまたはC ++ 2008 Expressのダウンロードを個別にダウンロードできる場所に関する情報を誰かが持っている場合は、私に知らせてください。
105 c++  ide  download 

11
最も正確な結果を得るには、フロートをどの順序で追加する必要がありますか?
これは私が最近のインタビューで尋ねられた質問であり、知りたいです(私は実際には数値解析の理論を覚えていませんので、私を助けてください:) 浮動小数点数を累積する関数がある場合: std::accumulate(v.begin(), v.end(), 0.0); vでstd::vector<float>、たとえば、。 それらを蓄積する前にこれらの数値をソートする方が良いでしょうか? どの順序が最も正確な答えを与えるでしょうか? 数値を昇順で並べ替えると、実際には数値誤差が少なくなると思いますが、残念ながら自分では証明できません。 PS私はこれがおそらく実世界のプログラミングとは何の関係もないことに気づき、好奇心旺盛なだけだと思います。

9
スレッド間で例外を伝播するにはどうすればよいですか?
単一のスレッドが呼び出す関数があります(これをメインスレッドと呼びます)。関数の本体内で、CPU集中型の作業を行うために複数のワーカースレッドを生成し、すべてのスレッドが完了するのを待ってから、メインスレッドで結果を返します。 その結果、呼び出し元は関数を単純に使用でき、内部的には複数のコアを使用します。 これまでのところすべて良い 私たちが抱えている問題は、例外を扱うことです。ワーカースレッドで例外を発生させてアプリケーションをクラッシュさせたくありません。メインスレッドでそれらをキャッチできるように、関数の呼び出し元が必要です。ワーカースレッドで例外をキャッチし、それらをメインスレッドに伝達して、そこから巻き戻しを続ける必要があります。 どうすればこれを行うことができますか? 私が考えることができる最高のものは: ワーカースレッドでさまざまな例外をキャッチします(std :: exceptionおよびいくつかの独自の例外)。 例外のタイプとメッセージを記録します。 メインスレッドに、ワーカースレッドに記録されたタイプの例外を再スローする、対応するswitchステートメントを用意します。 これには、例外タイプの制限されたセットのみをサポートするという明らかな欠点があり、新しい例外タイプが追加されるたびに変更が必要になります。

9
コンパイル時のboost :: system :: system_category()への未定義の参照
Boostライブラリを使用するUbuntu 11.10でプログラムをコンパイルしようとしています。Ubuntuリポジトリから1.46-dev Boostライブラリをインストールしましたが、プログラムをコンパイルするとエラーが発生します。 undefined reference to boost::system::system_category() 私が間違ったことは何ですか?
105 c++  boost 

5
イテレータを使用してベクトルをナビゲートする方法は?(C ++)
目的は、[]演算子や「at」メソッドではなく、文字列のベクトルの「n番目」の要素にアクセスすることです。私が理解していることから、コンテナをナビゲートするためにイテレータを使用できますが、これまでイテレータを使用したことがなく、読んでいるものは混乱しています。 これを達成する方法について誰かが私にいくつかの情報を提供できたら、私はそれを感謝します。ありがとうございました。
105 c++  iterator  vector 

10
クラスのconstメンバー変数を初期化する方法は?
#include <iostream> using namespace std; class T1 { const int t = 100; public: T1() { cout << "T1 constructor: " << t << endl; } }; constメンバー変数tを100で初期化しようとすると、次のエラーが発生します。 test.cpp:21: error: ISO C++ forbids initialization of member ‘t’ test.cpp:21: error: making ‘t’ static const値を初期化するにはどうすればよいですか?
105 c++  const 

8
opengl:glFlush()とglFinish()
呼び出しの実際的な違いを区別するのに苦労しています glFlush()としglFinish()。 ドキュメントはと言うglFlush()とglFinish()1の違いは、され、それらはすべて実行されます保証することができますようにOpenGLにバッファリングされたすべての操作をプッシュしますglFlush()リターンがすぐ場合などglFinish()ブロックすべての操作が完了するまで。 定義を読んだ後、それを使用glFlush()すると、OpenGLに実行できるよりも多くの操作をOpenGLに送信するという問題が発生する可能性があると考えました。だから、試してみるために、glFinish()ために、はa glFlush()とloました。見たところ、私のプログラムは(私の知る限り)実行されましたが、まったく同じです。フレームレート、リソース使用量、すべてが同じでした。 したがって、2つの呼び出しの間に大きな違いがあるのか​​、それとも私のコードで2つの呼び出しに違いがないのかと思います。または、一方を他方に対して使用する必要がある場合。また、OpenGLが次のような呼び出しを行うこともわかりましたglIsDone() aのすべてのバッファリングされたコマンドglFlush()が完了したかどうかを確認する(そのため、実行可能な速度よりも速くOpenGLに操作を送信しないでください)が、そのような関数を見つけることができませんでした。 私のコードは典型的なゲームループです: while (running) { process_stuff(); render_stuff(); }
105 c++  c  opengl  graphics 

5
VSTプラグインはどのように作成されますか?
VSTプラグインを作りたい(または作り方を学びたい)。このための特別なSDKはありますか?.exeではなく.vstを生成するにはどうすればよいですか?また、Logic Pro用のAudio Unitsを作成しようとしている場合、それはどのように行われますか?ありがとう
105 c++  audio  vst 


7
操作後にstd :: coutの状態を復元する
次のようなコードがあるとします。 void printHex(std::ostream& x){ x<<std::hex<<123; } .. int main(){ std::cout<<100; // prints 100 base 10 printHex(std::cout); //prints 123 in hex std::cout<<73; //problem! prints 73 in hex.. } 私の質問はcout、関数から戻った後に状態を元の状態に「復元」する方法があるかどうかです。(やや好きstd::boolalphaでstd::noboolalpha..)? ありがとう。
105 c++  iostream 

8
代入演算子とコピーコンストラクタの違いは何ですか?
C ++での代入コンストラクターとコピーコンストラクターの違いがわかりません。それはこのようなものです: class A { public: A() { cout << "A::A()" << endl; } }; // The copy constructor A a = b; // The assignment constructor A c; c = a; // Is it right? 割り当てコンストラクターとコピーコンストラクターのメモリを割り当てる方法を知りたいですか?
105 c++  memory 

3
std :: getline()がフォーマットされた抽出後に入力をスキップするのはなぜですか?
ユーザーに名前と状態の入力を求める次のコードがあります。 #include <iostream> #include <string> int main() { std::string name; std::string state; if (std::cin >> name && std::getline(std::cin, state)) { std::cout << "Your name is " << name << " and you live in " << state; } } 私が見つけたのは、名前は正常に抽出されたが、州は抽出されなかったということです。これが入力と結果の出力です。 Input: "John" "New Hampshire" Output: "Your name is John and …
105 c++  input  iostream  istream  c++-faq 


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.