Init QList <mystruct>作为静态类成员给出了LNK2001错误</mystruct>

时间:2012-07-11 20:59:55

标签: c++ qt static-members qlist lnk2001

最好用代码本身来解释。我想使用QList<MyStruct>作为静态成员,但是获取链接器错误2001(LNK2001)。代码在文件MyClass.h

中的顺序相同
struct MyStruct{
    double  x;
    ...
};
typedef QList<MyStruct> MyStructList;

class MyClass
{
....
private:
    static MyStructList _myValues; // does not work => LNK2001
           MyStructList _myValues; // Test 1 OK
    static QList<int> _myValues; // Test 2 OK

任何提示? Eran的回答(见下面的评论)是正确的提示。解决

LNK2001:
error: LNK2001: unresolved external symbol "private: static class QList<struct> 

1 个答案:

答案 0 :(得分:1)

另一个被遗忘的静态成员定义的情况...... MyStructList MyClass::_myValues应该放在项目的一个.cpp文件中。