首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

QObject与其的派生类之间的转换?该如何处理

2012-05-02 
QObject与其的派生类之间的转换?有这么一个类:C/C++ code//a.hclass A :public QObject{Q_OBJECTpublic:A(

QObject与其的派生类之间的转换?
有这么一个类:

C/C++ code
//a.hclass A :public QObject{       Q_OBJECT       public:          A(QObject *parent=0);          void fun1();          void fun2();      private:            int x;            int y;};//a.cppA::A(QObject *parent):QObject(parent),x(1),y(2){}void A::fun1(){        A  a=*this; //这么搞会出现错误:QObject::QObject(const QObject&)是私有的        a.fun2();}void A::fun2() {.....}

有什么解决的办法!!!


[解决办法]
改成 A *pa = this 应该是OK的,具体原因我也说不上来,查一下父类子类对象间的转换关系。
[解决办法]
添加拷贝构造函数:
C/C++ code
A(const A& a)    {        x = a.x;        y = a.y;    } 

热点排行