2016-06-02 6 views
-1

私はC++の初級5版で勉強しています。私は自動あなたが作る式から、あなたどのような種類のフォームを伝え理解して何からエラー:タイプを指定しないでください(オートを使用)

auto item = val1 + val2; 

:彼らは私のような例を与えました。だから私は自分でした:これは何を意味する「『TEST3』タイプに名前を付けていない」

int test1 = 69, test2 = 72; 
auto test3 = test1 + test2; 

をしかし、私はエラーを得ましたか。私はtest3はtest1と同じ型になりますが、test2はintです。

+3

あなたがC++ 11のサポートなしでコンパイルしているように、それが聞こえます。 – kfsone

+0

@kfsone imは組み込みのコードブロックを使用しています。 C++ 11はデフォルトで有効になっています。編集:私はコマンドを使用してみました-std = C++ 11、同じ結果 – chaosfirebit

+0

くそバグ、http://cpp.sh/35avtで動作しますが、コードではありません::ブロック – chaosfirebit

答えて

1

--std=c++11を付けずにこの例を実行すると、同じエラーメッセージで失敗します。

thisのようにコードブロックを再度設定してみてください。

g++ --std=c++11 code.ccのように手動でコードを実行することもできます。

C++ 11が有効になっているかどうかを確認するには、ネストされたベクトルvector<vector<int>> vv;を宣言するだけで、より多くのC++ 11コードを入力して、>>を処理するかどうかを確認できます。コンパイルするために使用しているどのようなコンパイラ/オプション


  1. How can I add C++11 support to Code::Blocks compiler?
+0

ええ、私はそれが自分自身の質問に答えるつもりだと思ったが、とにかく答えてくれた。私がしたのはプロジェクトに移り、プロジェクトの引数を設定し、-std = C++ 11を追加しましたが、うまくいきませんでした。だから私はそれをgoogledし、今実行しているが、もう一度ありがとう! – chaosfirebit

関連する問題