最近看到了一段程式碼片段,如下:
CForeign::CForeign(const CForeign& Foreign)
{
if (this != &Foreign) // 請問這裡是否恆成立呢?
{
...
}
}
我自己是覺得那個if沒必要,因為一定會成立。
不過,其他三個人都認為那個if是會有不成立的可能性存在的。
我請他們提示我有什麼情況下是不成立的呢? 他們只說了 new 的情況下或許有可能。
但是他們暫時還想不出不成立情形的程式碼就是了。
所以,想請教大家的看法。謝謝唷!
註: 無特別的 operator overloading
※ 編輯: yayax (220.129.233.62), 06/21/2014 09:07:59