我有一个标题,它包含一个结构的原型(prototype):
struct UserDataStruct;
header 的源文件包含并包含 header 和:
struct UserDataStruct
{
int instance;
};
在我的主源文件中,我有:
int main ()
{
UserDataStruct lol;
return 0;
}
我似乎无法编译我的程序,因为 Visual Studio 2010 给我一个错误:
error C2079: 'lol' uses undefined struct 'UserDataStruct'
我怎样才能让它工作?
最佳答案
UserDataStruct
的完整定义需要在您创建它的实例之前出现。在这种情况下,前向声明是不够的。
只需将您的结构定义从 .cpp 文件移动到 header 即可。
关于c++ - 结构原型(prototype),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14150457/