博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
运算符 重载 入门
阅读量:5091 次
发布时间:2019-06-13

本文共 1782 字,大约阅读时间需要 5 分钟。

1 #include
2 using namespace std; 3 class complex // 定义 complex 类 4 { 5 public: 6 complex(){real=0;imag=0;} // 定义 构造函数 // 默认 函数的 值 为 0 7 complex(double r,double i){real=r;imag=i;} // 构造函数重载 // 在 类内 定义 带参的构造函数重载 8 complex complex_add(complex &c2); //声明 复数相加函数 9 void display(); // 声明输出函数10 private:11 double real;12 double imag;13 };14 complex complex::complex_add(complex &c2) // 定义复数 相加 函数 // 返回类型为 complex 在类外定义 类complex 的 成员函数 complex_add 函数 .15 {16 complex c; 17 c.real=real+c2.real;18 c.imag=imag+c2.imag;19 return c;20 }21 void complex::display()22 {23 cout<<"("<
<<","<
<<"i)"<

 重载(overloading):所谓重载,就是赋予新的含义.函数重载就是赋予新的含义,使之实现新的功能. 上面的 是 通过函数来实现 复数相加 下面将 上面的程序 稍作改动 实现 运算符重载. 给'+'赋予计算复数的功能

1 #include
2 using namespace std; 3 class complex // 定义 complex 类 4 { 5 public: 6 complex(){real=0;imag=0;} // 定义 构造函数 // 默认 函数的 值 为 0 7 complex(double r,double i){real=r;imag=i;} // 构造函数重载 // 在 类内 定义 带参的构造函数重载 8 complex operator +(complex &c2); //声明 复数相加函数 9 void display(); // 声明输出函数10 private:11 double real;12 double imag;13 };14 complex complex::operator +(complex &c2) // 定义复数 相加 函数 // 返回类型为 complex 在类外定义 类complex 的 成员函数 complex_add 函数 .15 {16 complex c;17 c.real=real+c2.real;18 c.imag=imag+c2.imag;19 return c;20 }21 void complex::display()22 {23 cout<<"("<
<<","<
<<"i)"<

 

转载于:https://www.cnblogs.com/A-FM/p/5236319.html

你可能感兴趣的文章
bzoj3529: [Sdoi2014]数表
查看>>
SSH三大框架 整合必备jar包
查看>>
什么是电子商务?电子商务面临的几个关键问题及解决办法?电子商务的核心是什么?B2C电子商务运营的核心是什么 ?...
查看>>
Jsp抓取页面内容
查看>>
AJAX与servlet的组合,最原始的
查看>>
大三上学期软件工程作业之点餐系统(网页版)的一些心得
查看>>
MySQL 数据表修复及数据恢复
查看>>
wine qq 2012 for linux
查看>>
CodeMirror简介
查看>>
[poj2492]A Bug's Life(并查集+补集)
查看>>
瀑布流
查看>>
Handler中post 方法的调用流程和使用场景
查看>>
react-native React Native version mismatch
查看>>
OneToMany与ManyToOne的属性
查看>>
Linux下可重入函数
查看>>
十个免费的Web压力测试工具
查看>>
单反画质总排名,你的单反排第几呢?
查看>>
修改镜像地址加快Ubuntu更新速度
查看>>
git 入门基本命令
查看>>
要做的决定
查看>>