当前位置: 首页> 娱乐> 八卦 > 中国社会保险网站_温州企业建站程序_企业邮箱怎么申请_福州网站建设方案外包

中国社会保险网站_温州企业建站程序_企业邮箱怎么申请_福州网站建设方案外包

时间:2025/7/13 5:42:47来源:https://blog.csdn.net/weixin_57112913/article/details/146279584 浏览次数:0次
中国社会保险网站_温州企业建站程序_企业邮箱怎么申请_福州网站建设方案外包

动态对象

1.添加Q_PROPERTY对象

#ifndef MYPROPERTYCLASS_H
#define MYPROPERTYCLASS_H#include <QObject>class MyPropertyClass : public QObject
{Q_OBJECTQ_PROPERTY(QString mask READ mask WRITE setMask NOTIFY maskChanged)
public:explicit MyPropertyClass(QObject *parent = nullptr);QString mask()const;void setMask(QString strMaskNum);
signals:void maskChanged(QString str);
public slots:private:QString m_mask;
};#endif // MYPROPERTYCLASS_H

2.动态属性可以用Q_OBJECT来指向Q_PROPERTY,这样在实际开发中,如果遇到别人写的对象我们又不想了解他的太多内容,只需要知道对象类名就可以直接进行数据的提取。

    MyPropertyClass * mypc = new MyPropertyClass;MyPropertyClass *mypc2 = new MyPropertyClass;connect(mypc,SIGNAL(maskChanged(QString)),this,SLOT(maskChanged(QString)));mypc->setMask("10000亿个口罩");qDebug()<<mypc->mask();QObject *obj = mypc;qDebug()<<"obj第一次进行属性的读取:"<<obj->property("mask").toString();obj->setProperty("mask","20000个口罩");qDebug()<<"obj第二次进行属性的读取:"<<obj->property("mask").toString();qDebug()<<"mypc2读取数据:"<<mypc2->mask();

注意因为元对象属性是静态的,内存中只有一份mypc指向了这个内存,意味着mypc2就不能读取到20000个口罩这个数据

对象树

Qt 提供了对象树机制,能够自动、有效的组织和管理继承自 QObject 的 Qt 对象。每个继承自 QObject 类的对象通过它的对象链表(QObjectList)来管理子类对象,当 用 户 创 建 一 个 子 对 象 时 , 其 对 象 链 表 相 应 更 新 子 类 对 象 信 息 , 对 象 链 表 可 通过children()获取。当父对象析构的时候,其对象链表中的所有(子)对象也会被析构,父对象会自动将其从父对象列表中删除。Qt 保证没有对象会被 delete 两次。开发中手动回收资源时建议使用deleteLater 代替 delete,因 deleteLater 多次是安全的,而 delete 多次是不安全的。

关键字:中国社会保险网站_温州企业建站程序_企业邮箱怎么申请_福州网站建设方案外包

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: