ringa_lee2017-04-17 14:59:54
return & this->operator*(); で呼び出される -> 演算子はポインタを介して呼び出されるため、オーバーロードの意味はなく、operator-> はオブジェクトを介して呼び出す必要があります。したがって、無限ループは発生しません。
StrBlobPtr a;
StrBlobPtr pa = &a;
a->empty(); // a はオブジェクトであるため、オーバーロードされた関数を呼び出します
pa->curr; //pa はポインタであり、-> が本来の意味であるため、プライベート メンバーが参照されるためエラーになります。