尝试创建结构实例时C ++未声明的标识符

时间:2014-11-19 11:20:38

标签: c++ struct undeclared-identifier

我有一个在C ++头文件中声明的结构,其中包含以下行:

struct AII_Common_Export message{
    ...
};

然后我尝试在C ++源文件中创建该结构的实例,以便我可以设置/使用存储在结构中的一些属性:

message data;

然而,当我编译我的代码时,我得到了一个"未声明的标识符"这行错误...我已将头文件包含在源文件中,所以我不明白为什么会收到此错误 - 有人可以向我解释一下吗?

我也尝试用以下方法创建它的实例:

AII_Common_Export message data;

然后得到编译错误:"语法错误:缺少&#39 ;;'在标识符'数据'。

之前

我是如何解决这个问题的,所以我可以创建一个struct的实例?

修改

我刚刚找到AII_Common_Export定义 - 它定义为:

#    define AII_Common_Export ACE_Proper_Import_Flag

并且ACE_Proper_Import_Flag定义为:

#define ACE_Proper_Import_Flag __declspec (dllimport)

这两个定义位于不同的头文件中。

1 个答案:

答案 0 :(得分:2)

做吧。

 struct message{
        ...
    };

message data;

请参阅http://www.cplusplus.com/doc/tutorial/structures/