初始化 QList<MyStruct> 作为静态类成员给出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> 

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

最新更新