一个新手问题。可以说我们有一个随机类中的两个对象,它们保存在指针中,如下所示:
RandomClass *obj1 = new RandomClass;
RandomClass *obj2 = new RandomClass;
现在,当您从这些对象中调用函数时,您可以像下面这样简单地进行操作:
obj1->randomFunction();
但是如何使用该类中的运算符函数,例如重载的乘法运算符(带有普通对象):
obj1 * obj2
如果不可能,您将如何解决该问题(无法编写新功能)。抱歉,如果这可能是一个愚蠢的问题,但是我对这与指针算法等如何工作有些困惑。
最佳答案
您可以像这样取消引用指针:
RandomClass *obj3 = new RandomClass();
*obj3 = (*obj1) * (*obj2);
如果您不再需要两个相乘的对象,请不要忘记适当地清除内存,并且上面的代码将为
obj3
在堆上分配新的内存。关于c++ - 带有指向对象的指针的运算符功能,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16044784/