没有给定一个私有成员 pData
private:
T* pData; // Generic pointer to be stored
下面是 * 和 -> 的重载实现
T& operator* ()
{
return *pData;
}
T* operator-> ()
{
return pData;
}
我们从 main 中调用相同的方法,如下所示:
void main(){
SP<PERSON> p(new Person("Scott", 25));
p->Display();
}
我无法理解 -> 和“*”运算符重载将如何在这里工作?或者更清楚p->Display();
将如何解释?