我遇到了一个 C++ 代码,其中调用了 operator->() 之类的东西。以下是代码片段,如果有人请解释一下。
template <typename T>
bool List<T>::operator == (const List& rhs)const
{
return (this == &rhs) || (root_.operator->() == rhs.root_.operator->());
}
请注意,root_ 是我无法获得完整代码的另一类的对象。
编辑:我刚刚浏览了代码,发现 root_ 实际上是智能指针的自定义实现。它在其中重载了 operator -> 以取消引用智能指针并获取实际指针的值。