4
#include <vector>
...
//inside main function
vector<int> vi3 = {42,42,42,42,42,42,42,42,42,42};

私は C++ を学んでいますが、このようなベクトルを初期化することは可能だと思っていました... 何か間違っていますか? ベクトルを初期化する他の方法について知っています。私が読んでいる本では、次のようにもできると書かれています。

vector<int> vi3{42,42,42,42,42,42,42,42,42,42};

それは私にエラーを与えた本の最初のものです。私は何を間違っていますか?

4

1 に答える 1

10

どのコンパイラを使用しているかは不明ですが、2013 プレビューより前の Microsoft の Visual Studio のバージョンは、統一された初期化構文をサポートしていません。{}

gcc を使用している場合は、C++11 を使用するように指示する必要があります。

-std=c++0x
于 2013-07-08T11:53:38.737 に答える