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

相关推荐
集成显卡18 小时前
Bun.js + Elysia 框架实现基于 SQLITE3 的简单 CURD 后端服务
开发语言·javascript·sqlite·bun.js
2501_9387739918 小时前
Objective-C 类的归档与解档:NSCoding 协议实现对象持久化存储
开发语言·ios·objective-c
无敌最俊朗@18 小时前
SQlite:电影院售票系统中的主键(单列,复合)约束应用
java·开发语言·数据库
今日说"法"18 小时前
Rust 代码审查清单:从安全到性能的关键校验
开发语言·安全·rust
有趣的我18 小时前
关于stub和mock
c++
wydaicls19 小时前
C语言 了解一下回调函数(钩子函数)的使用
c语言·开发语言
Yupureki19 小时前
从零开始的C++学习生活 18:C语言复习课(期末速通)
c语言·数据结构·c++·学习·visual studio
java1234_小锋19 小时前
PyTorch2 Python深度学习 - 数据集与数据加载
开发语言·python·深度学习·pytorch2
千码君201619 小时前
Go语言:常量计数器iota的意义
开发语言·后端·golang·状态码·const·iota·常量
永远有缘19 小时前
四种编程语言常用函数对比表
java·开发语言·c++·python