我正在使用g++在Cygwin中编译一个C++程序,其中有一个构造函数没有参数,我有以下代码:
MyClass myObj();
myObj.function1();
我试图编译时,出现了以下错误信息:
error: request for member 'function1' in 'myObj', which is of non-class type 'MyClass ()()'
经过一番研究,我发现解决方法是将第一行改为:
MyClass myObj;
我能发誓以前在C++中用括号声明过空构造函数。这可能是我正在使用的编译器的限制吗?还是语言标准确实说不要对没有参数的构造函数使用括号?