重载指针对象
问题描述:
嗨 如何重载指针对象。我试过它没有解决。谁能帮我。重载指针对象
CMyClass *InstancePtr = new CMyClass;
Myclassptr = MapObject->second; // returns *CMyclass
//overlaod Assignment operator ...
InstancePtr = Myclassptr;
//////////////////////////////////////////////////////
CMyClass * CMyClass::operator=(const CMyClass *ptr)
{
//some operation
int x = 4;
x = x - 2;
return this;
}
答
您不能重载操作符的指针类型对象。
只能重载一个操作符,其中至少有一个操作数是类类型或枚举类型。
由于重载赋值操作符必须实现为非静态成员函数,因此只能在左侧操作数是类类型的情况下才能重载。
是否有任何解决方法..我已经有一个myClass指针,我想要它的20个副本(不指向相同的地址)。任何想法的欢迎。 – 2010-11-26 06:17:04