2011-01-19 25 views

cevap

15

Bu, this numaralı bir ödev değil, this tarafından işaret edilen nesneye atanmamıştır. Bu, geçerli nesne üzerinde operator=(QUuid const &)'u etkili bir şekilde arayacaktır.

+0

veya örtülü olan (herhangi bir görev tanımlayıcısı tanımlanmamışsa) – smerlin

+0

@smerlin: Operatörün açıkça kullanıcı tarafından tanımlanıp tanımlanmadığı veya derleyici tarafından örtük olarak tanımlanıp tanımlanmadığı, daha fazla uygulama detayıdır, aynı operatördür. –

+0

BTW, '* this = QUuid (guid);' kodu, daha açık ve hantaldır: 'this-> operator = (QUuid (guid))'… bu, cevabı herhangi bir şekilde etkilemez. –

4

Sadece QUuid &operator=(const QUuid& quUid); numaralı telefonu çağırıyor.

1

'this', geçerli yöntemin çalıştırıldığı nesnenin yalnızca bir işaretçisidir. 'Bu' ardındaki değerin değiştirilmesi (* this’i kullanarak imlecin kaldırılması ve başka bir nesne atanmasıyla), arayanın nesnesinin bir diğerine dönüşmesini sağlar. türde yeni nesnesine 'operatörü =' Bu eylem kopyalamaya karşı dönüştüren 'guid' tanımına göre

GUID guid = guid(...) ; 
QUuid uid = guid ; 

: En örnekte

, bir arayan 'operatörü =' Aşağıdaki yapabilir 'QUuid'.