c++-primer - 《c++primer》中关于重载操作符->的疑问?

浏览:51日期:2023-04-07

问题描述

问题解答

回答1:

return & this->operator*();中调用->操作符是通过指针调用,因此是原始的没有重载的含义,而operator->必须通过对象来调用!因此不会出现死循环。StrBlobPtr a;StrBlobPtr pa = &a;

a->empty(); //调用重载函数,因为a是对象

pa->curr; //出错,因为pa为指针,->为原始含义,因此引用了私有成员

相关文章: