C++学习笔记03--运算符重载(运算符符号篇)
2020-03-08 14:41
916 查看
在C++中,对 int,float,double 类型数据进行四则计算时,我们常常用到 + , - ,* ,/ 这四种运算符。但是如果我们要对我们自定义的类型进行 +, -, *, /运算时,我们要如何进行呢? 实际上我们可以通过构造函数来进行,但是当运算多次使用时,多次抽调函数是一件很麻烦的事情。所以C++中添加了 运算符重载(关键字**operator + 运算符**) 这样一个功能,可以通过一次定义,就可以达到对自定义类型数据的 +,-,*,/ 运算。 接下来举例说明:
#include<iostream> using namespace std; //在此处,我构建了一个自定义的Person类 class Person { public: //此处构建了两个Person类的属性 int m_A; int m_B; //成员函数运算符重载,用 operator + 重载 “+” 运算符 Person operator+ (Person& p) { Person temp; //定义Person类中“ + ”运算符的具体操作 temp.m_A = this->m_A + p.m_A; temp.m_B = this->m_B + p.m_B; return temp; } }; int main() { //定义两个Person实例 p1 , p2 Person p1; p1.m_A = 10; p1.m_B = 10; Person p2; p2.m_A = 10; p2.m_B = 10; //运算符重载实质其实为函数的调用 Person p3 = p1.operator+(p2); //运算符重载实际用法,实现对自定义类的相加运算 Person p4 = p1 + p2; //输出结果校验 cout << p4.m_A << endl; cout << p4.m_B << endl; system("pause"); return 0; }
接下来是运算结果,显示重载后的 “ + ” 运算符实现了对自定义类Person四则运算的功能
注意:重载的运算符也是可以有重载函数的
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- 学习笔记(03):C++语言基础视频教程-4.1 什么是运算符重载
- 【C++】学习笔记三——算术运算符
- C++学习笔记9-运算符重载
- C++学习笔记3——布尔类型和三目运算符
- 【Java学习笔记】03.运算符与键盘录入数据操作
- 【菜鸟C++学习笔记】9.三目运算符
- 【C++】【学习笔记】【025-027】运算符重载
- C++基础学习笔记:运算符重载
- [原创]java WEB学习笔记39:EL中的运算符号(算术运算符,关系运算符,逻辑运算符,empty运算符,条件运算符,括号运算符)
- 学习笔记(03):Python 面试100讲(基于Python3.x)-单星和双星运算符的作用,并举例说明...
- 【C++ 学习笔记小程序03】 整型及其相关知识
- 【C++】学习笔记二十四——?:运算符
- C++学习笔记(十一):成员访问运算符(点运算和箭头运算)
- C++基础学习笔记----第一课补充(符号表)
- C++ 学习笔记(4)表达式、运算符、类型转换(static_cast、const_cast、reinterpret_cast、dynamic_cast)
- 【C++ 学习笔记小程序03】 整型及其相关知识
- 菜鸟的C++学习笔记:运算符的重载
- 【C++ 学习笔记小程序05】 const限定符 浮点数 算数运算符
- 嵌入式开发之C++基础学习笔记5--静态成员,友元,运算符重载,模板,文件流
- c++学习笔记(三):指针(&和*)运算符