注册 登录
编程论坛 C++教室

重载问题,高手指导一下

szucz 发布于 2012-11-23 17:04, 312 次点击
point* operator+(const point*a,const point *b)
{
    point* s=new point;
    s->set(a->x+b->x ,a->y+b->y);
    return s;
}
我想重载,想返回的是一个指针
5 回复
#2
rjsp2012-11-24 08:41
首先,指针属于内建类型,重载必须要求至少有一个用户自定义类型,也就是无法重载
其次,如果返回类型为指针,就无法释放内存,屄造成内存泄漏
#3
天剑山2012-11-24 14:15
饿.....最好不要干这些莫名其妙的东西.....加法返回引用可以理解,但返回指针就不能理解了.......
#4
lyj1232012-11-25 08:08
以下是引用rjsp在2012-11-24 08:41:19的发言:

首先,指针属于内建类型,重载必须要求至少有一个用户自定义类型,也就是无法重载
其次,如果返回类型为指针,就无法释放内存,屄造成内存泄漏
point ?C++有这个类型吗?还是MFC里的类型?应该是自己定义的吧,可以重载
#5
rjsp2012-11-26 09:26
以下是引用lyj123在2012-11-25 08:08:44的发言:

point ?C++有这个类型吗?还是MFC里的类型?应该是自己定义的吧,可以重载

楼主重载的point*,不是point
前者属于C++内建类型 ------ 指针
#6
lz10919149992012-11-26 09:41
楼上正解。
1