C++ 重载

"operator=="是一个函数

为什么可以写成return Point(x + other,y+other.y)的形式,其实第一个参数对应point的第一个变量,第二个参数对应第二个变量。

还可以写成下面的形式:

cpp 复制代码
const{    
    Point ret;
    ret.x = x + other.x
    ret.y = y + other.y
    return ret;
}

实际上隐含了

cpp 复制代码
class Point{
public:
    int x,y;
    Point(int x1 , int y1){
        x = x1;
        y = y1;
    }//隐藏,默认的构造函数
    Point operator+(const Point& other) const{
        return Point(x + other.x , y + other.y);//创建了一个对象并赋值
    }
}

返回的Point和平时返回的int是一样的,并不是指针,只是一个值

相关推荐
hongyanwin14 分钟前
cmake qt 项目编译(win)
开发语言·qt
強云1 小时前
内存池(C++)
c++
元亓亓亓2 小时前
Java后端开发day42--IO流(二)--字符集&字符流
java·开发语言
JANYI20182 小时前
在c++中老是碰到string&,这是什么意思?
开发语言·c++
passionSnail3 小时前
《MATLAB实战训练营:从入门到工业级应用》趣味入门篇-用声音合成玩音乐:MATLAB电子琴制作(超级趣味实践版)
开发语言·matlab
锦夏挽秋3 小时前
Qt 信号槽机制底层原理学习
c++·qt
shenyan~3 小时前
关于Python:9. 深入理解Python运行机制
开发语言·python
天堂的恶魔9463 小时前
C++ - 仿 RabbitMQ 实现消息队列(1)(环境搭建)
开发语言·c++·rabbitmq
殇淋狱陌4 小时前
【Python】常用命令提示符
开发语言·python·虚拟环境
anqi274 小时前
在sheel中运行Spark
大数据·开发语言·分布式·后端·spark