我有一个 header ,它包含结构的原型(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/

10-10 06:46