QObject为什么禁用复制构造函数和赋值运算符?

QObject禁用复制构造函数和赋值运算符源于它的性质:

  1. 可能具有唯一的QObject :: objectName。
    Qt对象可以拥有自己的名称,objectName属性保存对象的名称。
    那么复制一个Qt对象,如何处理新的对象的名字?

  2. 在对象层次结构中具有位置。
    QObjects将自己组织在对象树中。
    那么复制一个Qt对象,新的对象应位于何处?

  3. 可以连接到其他Qt对象,以向它们发出信号或接收它们发出的信号。
    QObjects可以connect到其他对象。
    那么复制一个Qt对象,应该如何将这些连接转移到新的对象中?

  4. 可以在运行时添加未在C ++类中声明的新属性。
    那么复制一个Qt对象,原始对象中添加的属性是否应该复制到新对象?

由于这些原因,应将Qt对象视为身份而不是值。因此,QObject的拷贝构造函数和赋值操作符是禁用的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值