Visual C++ 10 には組み込みstatic_assert
の. ただし、次をコンパイルすると
void test()
{
static_assert( sizeof( char ) == 1, "" );
}
私は得る
エラー C3861: 'static_assert': 識別子が見つかりません
static_assert
Visual C++ 10 でどのように使用すればよいですか?
Visual C++ 10 には組み込みstatic_assert
の. ただし、次をコンパイルすると
void test()
{
static_assert( sizeof( char ) == 1, "" );
}
私は得る
エラー C3861: 'static_assert': 識別子が見つかりません
static_assert
Visual C++ 10 でどのように使用すればよいですか?
その理由は、Visual Studio が Visual C++ 9 コンパイラ (Visual Studio 2008 に同梱されているもの) を使用するように設定されていたためです。どうやってそれが起こったのかわかりません。おそらく、Visual Studio を構成するウィザードが以前のバージョンへのパスをインポートしたのでしょう。
設定は、プロジェクト プロパティの [VC++ ディレクトリ] ペインで変更されます。どのコンパイラが呼び出されているかを確認する簡単な方法は-Bv
、コンパイラにそのバージョンを報告させるオプションをコンパイラ コマンド ラインに追加することです。
Visual C++ 10 には組み込みの static_assert があるという印象を受けました。
それは確かにそうであり、これは私にとって完全にうまくコンパイルされます:
int main(){
static_assert( sizeof( char ) == 1, "" );
}
コードに他のエラーはありますか? このエラーは、他のエラーの連鎖の結果である可能性があります。