C++ 自定义对象的QList
我正在尝试创建自定义对象的C++ 自定义对象的QList,c++,qt,qlist,C++,Qt,Qlist,我正在尝试创建自定义对象的QList,但无法这样做。尝试执行此操作时收到的编译错误是: 错误:未找到架构x86\u 64的符号(未找到文件) 我能够创建自定义对象指针以及基本数据类型指针的QList。我知道QList支持我正在尝试做的事情,正如文档中所说的那样 我使用的是Mac OS X 10.7.5、Qt 5.0.1和Qt Creator 2.6.2 代码: QList我的列表; 根据文档: QList的值类型必须是可分配的数据类型。 若要限定,类型必须提供默认构造函数、副本构造函数和赋值运算
QList
,但无法这样做。尝试执行此操作时收到的编译错误是:
错误:未找到架构x86\u 64的符号(未找到文件)
我能够创建自定义对象指针以及基本数据类型指针的QList
。我知道QList
支持我正在尝试做的事情,正如文档中所说的那样
我使用的是Mac OS X 10.7.5、Qt 5.0.1和Qt Creator 2.6.2
代码:
QList我的列表;
根据文档:
QList的值类型必须是可分配的数据类型。
若要限定,类型必须提供默认构造函数、副本构造函数和赋值运算符。因此,您的自定义类应该像这样实现
class MyClass
{
public:
MyClass() {}
MyClass(const MyClass &other);
MyClass &operator=(const MyClass &other);
private:
//private data members
};
您是否包括MyClass.h?也许您安装了32位x86库而不是x86_64?也许您未能将库放置在LD_LIBRARY_路径中?是否有忘记实现的虚拟方法?或者您没有在其源文件中声明的任何静态成员?问题是我在MyClass中定义了析构函数。一旦我把它注释掉,代码就被编译了。我还没有测试它。有人知道为什么这可能会导致QList出现这样的问题吗?你必须向我们展示你的析构函数中有什么,以及它是如何定义的。+1会这样做的,因为它解决了我的问题。正如QList文档中建议的那样,我存储指针以避免麻烦。
class MyClass
{
public:
MyClass() {}
MyClass(const MyClass &other);
MyClass &operator=(const MyClass &other);
private:
//private data members
};