java operator overload_c++下的 overload operator
't modified quote
{ //example: void output(integer &ur), it will running error
cout
int main()
{
integer in(12,25);
//in++;
output(in++);
output(++in);
output(in++);
return 0;
}
*******the result*******
12 25
14 27
14 27
从以上两个程序可以看出,再用重载操作符(一元)时,最好定义一个返回函数,然后再通过外部调用,否则会出错
类似的操作符还有operator--(), operator--(int).
在以上类中添加如下语句
integer& operator--() //overload operator i--
{
i--;
a--;
return *this;
}
integer operator--(int) //overload operator --i
{
int odi=i;
int od=a;
i--;
a--;
return integer(odi,od);
}
integer& operator-() //取相反数
{
i=i*(-1);
a=a*(-1);
return *this;
}
integer& operator~() //按位取非
{
i=~i;
a=~a;
return *this;
}
integer& operator!() //取反
{
i=!i;
a=!a;
return *this;
}
在以上main函数中添加如下的语句:
output(in--);
output(--in);
output(in--);
output(-in);
output(~in);
output(!in);
*********the result:*************
12 25
10 23
10 23
-9 -22
8 21
0 0
以上结果不包括自加的结果
二元运算符(+=, + 和-=)
类中添加如下语句(还是利用上面的程序)
integer& operator+=(integer &c) //overload operator i++
{
i+=c.geti();
a+=c.geta();
return *this;
}
integer &operator-=(integer &x1) //overload operator ++i
{
i-=x1.geti(); //在这里面其实是两个对象,一个是this所指的对象,一个是参数中的对象。
a-=x1.geta();
return *this;
}
integer operator+(integer c) //overload operator i++, need a parameter, don'
java operator overload_c++下的 overload operator相关推荐
- java mail smtps,使用javamail发SMTPS邮件,javamailsmtps邮件,Java通常情况下都不会
使用javamail发SMTPS邮件,javamailsmtps邮件,Java通常情况下都不会 Java 通常情况下都不会对smtp发邮件加密,但是gmail做了加密. 首先需要引用 Javamail ...
- Java在eclipse下开发的常用快捷键集锦
2019独角兽企业重金招聘Python工程师标准>>> Java在eclipse下开发的常用快捷键集锦 ctrl+shift+o 说明:删除无用的代码引用 使用场景:当前文件中的引用 ...
- java读取json配置文件_解决:java 读取 resources 下面的 json 文件
前言:java 读取 工程下的配置文件,文件类型为 json(*.json),记录一下始终读取不到 json 文件的坑.maven项目 直接上工具类代码 package com.yule.compon ...
- warning C4552: '' : operator has no effect; expected operator with side-effect
1>编写一个自定义的函数shift_right:利用引用形参实现对一个int型的数据右移n位. 代码如下: #include<iostream> using namespace st ...
- java dos编译命令是什么_在DOS命令行状态下,如果源程序HelloWorld.java在当前目录下,那么编译该程序的命令是()...
[单选题]下列行为中,属于绝对商行为的是 [填空题]汽车故障的变化规律可分为3个阶段,早期故障期. 和 . [填空题]无分电器点火线圈与一般点火线圈不同,其 与 没有连接,为互感作用. [简答题]练习 ...
- java读取Resources下文件
java读取Resources下文件_杰子的世界-CSDN博客_java获取resources下的文件 第四种, 读取路径 ResourceBundle bundle = ResourceBundle ...
- java 获取classpath下文件多种方式
java 获取classpath下文件多种方式 一:properties下配置 在resources下定义server.properties register.jks.path=classpath\: ...
- 黑马 程序员——Java基础---IO(下)
黑马程序员--Java基础---IO(下) ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------ 一.概述 Java除了基本的字节流.字符流之外,还提供 ...
- Java生产环境下性能监控与调优详解 大纲 学习感悟
Java生产环境下性能监控与调优详解 生产环境发生了内存溢出如何处理? 生产环境应该给服务器分配多少内存合适? 如何对垃圾收集器的性能进行调优? 4.生产环境CPU负载飙高该如何处理? 5.生产环境应 ...
- Java生产环境下性能监控与调优详解 第2章 基于JDK命令行工具的监控
Java生产环境下性能监控与调优详解 第2章 基于JDK命令行工具的监控 2-1 JVM的参数类型 标准参数 x参数 XX参数 2-2 查看JVM运行时参数 2-3 jstat查看JVM统计信息 2- ...
最新文章
- R语言manova函数进行多元方差分析(Multivariate analysis of variance 、MANOVA)、如果多变量检验结果有显著性,summary.aov函数锦欣单变量方差分析
- 对比Memcached和Redis,谁才是适合你的缓存?
- python学习笔记之——range()函数
- 开源个小工具simple-repo
- 企业实战(Jenkins+GitLab+SonarQube)_02_Jenkins运行
- 【今日CV 计算机视觉论文速览 第130期】Thu, 13 Jun 2019
- 【洛谷1640】[SCOI2010]连续攻击游戏
- @程序员,物联网发展的三大技术方向
- java 接口 白名单,SpringBoot HTTP接口跨域调用及白名单实现
- 世界上最美的公式——欧拉公式
- 苹果再次要求供应商降价,将伤及自身
- 湿度和温度对计算机设备的影响,简述环境温度的变化对机房设备的影响
- 城市内涝地埋式积水监测系统解决方案
- Windows常用快捷组合键整理Dos命令基础集合
- Expat XML parser
- asp.net鲜花网站系统VS开发sqlserver数据库web结构C#编程
- Nginx的部署与配置
- ibm 刀片服务器kvm使用
- 维修一块山寨三星860EVO固态,得一微YS9082HC+3颗intel QLC黑片
- IT领域中哲学原理的应用——个体与整体