ringa_lee
return & this->operator*();中調用->操作符是透過指標調用,因此是原始的沒有重載的意義,而operator->必須透過物件來調用!因此不會出現死循環。 StrBlobPtr a;StrBlobPtr pa = &a;
a->empty(); //呼叫重載函數,因為a是物件
pa->curr; //出錯,因為pa為指針,->為原始意義,因此引用了私有成員
return & this->operator*();中調用->操作符是透過指標調用,因此是原始的沒有重載的意義,而operator->必須透過物件來調用!因此不會出現死循環。
StrBlobPtr a;
StrBlobPtr pa = &a;
a->empty(); //呼叫重載函數,因為a是物件
pa->curr; //出錯,因為pa為指針,->為原始意義,因此引用了私有成員