没有合适的资源?快使用搜索试试~ 我知道了~
C++运算符重载实例代码详解(调试环境 Visual Studio 2019)
1 下载量 152 浏览量
2020-12-20
21:19:23
上传
评论
收藏 89KB PDF 举报
温馨提示
试读
3页
最近看了菜鸟教程里的C++教程 遇到很多运算符重载,为了方便我的学习,我把这些总结了一下 如有错误(包括之前的博文)请评论留言,谢谢! 由于代码里注释的很清楚,我就不做过多的解释了。 下面是这次总结的头文件,用来放置一些类和方法。 //C++运算符重载实例.h #pragma once #include <iostream> using namespace std; class chongzai { private: int i, j, k; public: chongzai() { i = 0; j = 0; k = 0; } chongzai(int a, int b,
资源详情
资源评论
资源推荐
C++运算符重载实例代码详解(调试环境运算符重载实例代码详解(调试环境 Visual Studio 2019))
最近看了菜鸟教程里的C++教程
遇到很多运算符重载,为了方便我的学习,我把这些总结了一下
如有错误(包括之前的博文)请评论留言,谢谢!
由于代码里注释的很清楚,我就不做过多的解释了。
下面是这次总结的头文件,用来放置一些类和方法。
//C++运算符重载实例.h
#pragma once
#include <iostream>
using namespace std;
class chongzai
{
private:
int i, j, k;
public:
chongzai()
{
i = 0;
j = 0;
k = 0;
}
chongzai(int a, int b, int c)
{
i = a;
j = b;
k = c;
}
//以下分别为A1,A2,A3的显示函数
void display1()
{
cout << "A1:" << endl;
cout << "i=" << i << endl;
cout << "j=" << j << endl;
cout << "k=" << k << endl;
cout << "------------------" << endl;
}
void display2()
{
cout << "A2:" << endl;
cout << "i=" << i << endl;
cout << "j=" << j << endl;
cout << "k=" << k << endl;
cout << "------------------" << endl;
}
void display3()
{
cout << "A3:" << endl;
cout << "i=" << i << endl;
cout << "j=" << j << endl;
cout << "k=" << k << endl;
cout << "------------------" << endl;
}
/*************************************************************************************************/
/*
一元运算符重载:
递增运算符( ++ )和递减运算符( -- )
一元减运算符,即负号( - )
逻辑非运算符( ! )
*/
chongzai operator-() //以负号( - )为例
{
i = -i;
j = -j;
k = -k;
return chongzai(i, j, k);
}
/*************************************************************************************************/
/*
二元运算符重载:
二元运算符需要两个参数
加运算符( + ),减运算符( - ),乘运算符( * )和除运算符( / )
*/
chongzai operator+(const chongzai& n) //以加号( + )为例
{
chongzai A;
A.i = this->i + n.i;
A.j = this->j + n.j;
A.k = this->k + n.k;
return A;
}
/**********************************************************************************************/
/*
关系运算符重载:
大于( > ),小于( < ),大于等于( >= ),小于等于( <= ),等于( = )等
*/
bool operator<(const chongzai& n) //以小于号( < )为例
{
if (i < n.i)
return true;
if (i >= n.i)
return false;
return false;
}
/**********************************************************************************************/
/*
输入输出运算符重载:
流提取运算符 >> 和流插入运算符 <<
使用友元函数无需设置对象,而且符合人们cout<<和cin>>的书写习惯
*/
friend ostream& operator<<(ostream& output, const chongzai& A)
{
output << "i:" << A.i << endl;
output << "j:" << A.j << endl;
weixin_38628243
- 粉丝: 1
- 资源: 908
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0