• 4555阅读
  • 3回复

Qt 的反射功能:通过类名字符串生成类对象 [复制链接]

上一主题 下一主题
离线twodiamond
 

只看楼主 倒序阅读 楼主  发表于: 2015-08-17
大家好:
       自己定义了一个类
       class Mywidget : public QWidget
     {
          Q_OBJECT

          ......
       };

     能否利用类名字符串 “Mywidget” 来生成:
     QString className="Mywidget";
     QObject *a = new (className);



离线clannadzy

只看该作者 1楼 发表于: 2015-08-17
根据你这样不就生成了吗?目测关键在那个字符串啊
离线johnyork

只看该作者 2楼 发表于: 2015-08-17
Qt是具备反射功能的,请参考Qt官网论坛上关于实现反射机制的一个讨论
离线twodiamond

只看该作者 3楼 发表于: 2015-08-18
谢谢回复!

关于Qt论坛上反射的讨论,看了一遍,不太懂,还得继续学习研究。

实际上,我也看到有人说,我提到的这种需求:通过类名字符串,生成实例对象,可以通过宏定义来实现,尝试着去实现,目前还未成功。

谢谢!

快速回复
限100 字节
 
上一个 下一个