2013-01-18 16 views

回答

1

this.xxx在C++中是不允許的。在訪問成員對象之前,所有包括this(這是指向當前對象的指針)的指針都需要進行DE引用。 DE-引用一個指針是通過在C++中*操作者作爲表達式

(*this).xxx

其也寫爲其中結合了一個操作員-> DE-參考和構件訪問作爲this->xxx

的速記這最終

相反,C#接受表示this.xxx,其中這不是指針,而是對象的當前實例。

我相信,好奇你是從C#沒有 - 至少從C++

使用this作爲當前對象的實例的約定是在Java和C#相關的,所以我建議你到特定的符號重新驗證表達式的來源

+0

從標準的角度來看,你可能是對的,但實際上這是錯誤的。 ' - >'不是「取消引用和訪問」。除此之外,你可以調用['nullptr'([查看鏈接](http://ideone.com/tW0fho))。在過去,「取消引用空指針」是實現'offsetof' [wiki](http://en.wikipedia.org/wiki/Offsetof) – Yury

+0

@Yury的常用方式:但是在所有情況下,我相信這是未定義的行爲 – Abhijit

相關問題