链接应用程序时出现下一种错误:

undefined reference to 'MyStructure::K_VARIABLE_A
undefined reference to 'MyStructure::K_VARIABLE_B
...


该结构在“ MyStructure.h”中定义为:

struct MyStructure
{
const static int K_VARIABLE_A=1;
const static int K_VARIABLE_B=2;
...
}


我如何摆脱这个错误?

我的源代码可以在Windows平台上成功编译,但是在android平台上编译时却遇到上述错误。

该结构的标头正确包含在.cpp文件中。

提前致谢。

最佳答案

在类/结构范围内定义常量值的首选方法是:

struct MyStructure
{
    enum
    {
        K_VARIABLE_A=1,
        K_VARIABLE_B=2,   // Note that you CAN keep the trailing comma
        ...
    };
};

07-27 16:54