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是一样的,并不是指针,只是一个值

相关推荐
新手小新14 分钟前
C++游戏开发(2)
开发语言·前端·c++
你的电影很有趣44 分钟前
lesson30:Python迭代三剑客:可迭代对象、迭代器与生成器深度解析
开发语言·python
程序员编程指南2 小时前
Qt 嵌入式界面优化技术
c语言·开发语言·c++·qt
q__y__L3 小时前
C#线程同步(二)锁
开发语言·性能优化·c#
二川bro3 小时前
第二篇:Three.js核心三要素:场景、相机、渲染器
开发语言·javascript·数码相机
云泽8083 小时前
数据结构前篇 - 深入解析数据结构之复杂度
c语言·开发语言·数据结构
逝雪Yuki3 小时前
数据结构与算法——字典(前缀)树的实现
数据结构·c++·字典树·前缀树·左程云
卷卷的小趴菜学编程3 小时前
Qt-----初识
开发语言·c++·qt·sdk·qt介绍
天天进步20153 小时前
Python游戏开发引擎设计与实现
开发语言·python·pygame
Vic101014 小时前
Hutool 的完整 JSON 工具类示例
开发语言·json