首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Qt中复制对象?

如何在Qt中复制对象?
EN

Stack Overflow用户
提问于 2010-04-16 19:29:52
回答 2查看 22.4K关注 0票数 12

我正在使用Qt,并且有一些真正的基本问题。我已经创建了具有变量obj的我自己的小部件MyTest。我需要从小部件外部的对象设置此变量obj,以便该变量被复制,而不仅仅是指向另一个对象的指针。我收到一条错误消息,并且不知道如何做这些基本的事情。这是我使用的代码:

MyTest.h:

代码语言:javascript
运行
复制
class MyTest : public QWidget
{
    Q_OBJECT

    public:
        void setObj(QObject &inobj);

        QObject obj;
    ....
}

MyTest.cpp:

代码语言:javascript
运行
复制
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:

代码语言:javascript
运行
复制
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    QObject *ob = new QObject();

    MyTest w;
    w.setObj(*ob);
}
EN

Stack Overflow用户

发布于 2019-12-20 17:05:49

如果您想传输数据并使用最简单的方法,只需在两个小部件之间创建一个信号和插槽即可。在主小部件中连接它们,并在调用插槽时传递数据。

票数 0
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2652504

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档