MSVC2013で以下をコンパイルしようとしています:
class SomeClass
{
struct SomeStruct { bool a,b,c; };
SomeStruct ss{false, false, false};
}
コンパイラは私に次のエラーを与えます:SomeClass::SomeStruct::SomeStruct: no overloaded function takes 3 arguments.
コードを次のように変更すると:
class SomeClass
{
struct SomeStruct { bool a,b,c; };
SomeStruct ss{{false, false, false}};
}
プログラムはコンパイルされ、正常に実行されます。これはコンパイラの問題ですか、それとも構文を理解していませんか? 私が読んでいることから、最初のバージョンはコンパイルされるはずです。