【发布时间】:2010-04-16 11:29:51
【问题描述】:
我正在使用 Qt,但遇到了一些真正的基本问题。我创建了自己的小部件 MyTest,它有一个变量 obj。我需要从小部件外部的对象设置此变量obj,以便复制该变量而不仅仅是指向另一个对象的指针。我收到一条错误消息,无法弄清楚如何做这些基本的事情。这是我正在使用的代码:
MyTest.h:
class MyTest : public QWidget
{
Q_OBJECT
public:
void setObj(QObject &inobj);
QObject obj;
....
}
MyTest.cpp:
void MyTest::setObj(QObject &inobj) {
obj = inobj; //HERE I get the error message: "illegal access from 'QObject' to protected/private member 'QObject::operator=(const QObject &)'"
}
main.cpp:
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QObject *ob = new QObject();
MyTest w;
w.setObj(*ob);
}
【问题讨论】: