搜索

首页  >  问答  >  正文

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

ringa_leeringa_lee2772 天前438

全部回复(1)我来回复

  • ringa_lee

    ringa_lee2017-04-17 14:59:54

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

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

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

    回复
    0
  • 取消回复