我正在使用g ++编译Cygwin中的C++程序,我有一个类,其构造函数没有参数.我有线:
MyClass myObj();
myObj.function1();
Run Code Online (Sandbox Code Playgroud)
当我尝试编译它时,我收到了消息:
error: request for member 'function1' in 'myObj', which is of non-class type 'MyClass ()()'
Run Code Online (Sandbox Code Playgroud)
经过一番研究,我发现修复是将第一行更改为
MyClass myObj;
Run Code Online (Sandbox Code Playgroud)
我可以发誓我之前用C++中的括号做了空构造函数声明.这可能是我正在使用的编译器的限制,还是语言标准真的说不使用括号用于没有参数的构造函数?