2016-07-14 2 views
1

C++のEmbarcaderoシアトルでvector<int>を超えてcount_ifを実行しようとしています。式構文エラーe2188、C++、Embarcadero、Count_If、

ベクトルは、正常に構築され、いくつかの値、いくつかの奇数、いくつかの値でインスタンス化されました。

は、私がこの文

int oddCounter = count_if(v.begin(), v.end(), [](int i){return i%2 != 0;}); 

私はソースの数をチェックしていると私は、構文に何かを見つけることができないでラムダを超える「E2188式の構文」エラーメッセージが表示されます。何か案は?

+0

(少なくとも)C++ 11モードでコンパイルしていますか? – Angew

+0

多くのありがとうAngew。それは正しい方向に私を指摘した。私のコンパイラと設定の知識は非常に限られています。私は64ビットのWindowsターゲットに切り替えてコンパイルすることができました。私は、より直接的な方法があると推測しています - コンパイラフラグは、32ビットで同じことを行います。 – DMG

答えて

0

多くのありがとうAngew。ラムダがコンパイルされます。私は、C++ 11が64ビットのWindowsターゲットに切り替えた後に含まれていると推測します。

関連する問題