克隆一個標識是比拷貝和分配值更復雜的操作。我們在QT對象模型中看到這樣的情形。
一個QT對象:
1 也許有一個獨特的QObject::objectName()。如果我們拷貝一個Qt對象,我們將給這份拷貝什麼名字?
2 在對象層次中有位置。如果我們拷貝QT對象,這份拷貝將放在何處?
3 可以關聯到其他QT對象,來發送或者接受信號,如果們拷貝一個QT對象,我們如何將這些鏈接轉移到拷貝對象上?
4 可以在運行時增加新的屬性,這些屬相在聲明時則沒有。如果我們拷貝QT對象,是否拷貝對象包含了原始對象的新增屬性?
出於這樣的原因,QT對象被作爲標識(identity)對待而不是值(value)。標識是被克隆的,不是拷貝或者分配來的,同時克隆一個標識是比複製或者分配值更加複雜的操作。因此,QObject及其所有子類(直接子類或者間接子類)的拷貝構造函數和賦值運算符都是無效的。