当前位置:  编程技术>c/c++/嵌入式

c++运算符重载基础知识详解

    来源: 互联网  发布时间:2014-10-24

    本文导语:  实际上,很多C++运算符已经被重载。eg:将*运算符用于地址,将得到存储在这个地址中的值,将他用于2个数字时,得到的将是他们的乘积。C++根据操作数的数目和类型来决定采用哪种操作。 C++允许将运算符重载扩展到用户定...

实际上,很多C++运算符已经被重载。eg:将*运算符用于地址,将得到存储在这个地址中的值,将他用于2个数字时,得到的将是他们的乘积。C++根据操作数的数目和类型来决定采用哪种操作。

C++允许将运算符重载扩展到用户定义的类型。例如,允许使用+将两个对象相加。编译器将根据操作数的数目和类型决定使用加法定义。运算符重载可以使代码看起来更自然。例如,将2个数组相加是一种常见的运算。通常,需要使用下面这样的for循环来实现:

代码如下:

for (int i = 0; i < 20; i++)
evening[i] = sam[i] + janet[i]; // add element by element

但在C++中,可以定义一个表示数组的类,并重载+运算符,于是便有这样的语句:

total = arr1+arr2;
一个计算时间的例子
mytime.h

代码如下:

#include"stdafx.h"
#include"MyTime.h"
#include

int_tmain(intargc,_TCHAR*argv[])
{
//比导入整个名称空间更经济
usingstd::cout;
usingstd::endl;

Timeplanning;
Timecoding(2,50);
Timefixing(5,55);
Timetotal;
cout


    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • python的三目运算符和not in运算符使用示例
  • c# 空合并运算符“??”的使用详解
  • Java中的位运算符、移位运算详细介绍
  • 位运算符有什么用?
  • C# null 合并运算符??(双问号)使用示例
  • SQLSERVER对索引的利用及非SARG运算符认识
  • 如何能将字符串转换成数学运算符
  • 在g++中new运算符操作失败,返回NULL,遇见过的请进来一下.
  • 对“.”运算符的困惑
  • 运算符<<的问题
  • c#的异或运算符介绍
  • Java用三元运算符判断奇数和偶数的简单实现
  • 问一个很简单的常识!一个运算符???
  • 有关按位运算符>>>的问题。
  • instanceof和typeof运算符的区别详解
  • C#中38个常用运算符的优先级的划分和理解
  • sql语句中AND & OR 运算符用法
  • 详细介绍Python语言中的按位运算符
  • java中的移位运算符心得总结
  • python基础教程之常用运算符




  • 特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3