加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

C++中自增运算符(前置、后置)的不同

(2012-04-26 00:00:00)
标签:

杂谈

分类: CPP程序设计

    当自增运算符用在自定义数据类型(例如类)对象上时,需要对自增运算符进行重载。因为自增运算符可以放在变量的前面作为前置运算符,也可以放在变量的后面做后置运算符。

    运算符重载是通过运算符重载函数来实现的。

    对前置自增运算符定义的重载函数作为类成员函数的形式为:

     类型  operator++()

              

      //...

      //...

      return * this

    }

       

    对后置自增运算符定义的重载函数作为类成员函数的形式为:

    //注意int仅仅是个标志,现在是对后置自加运算符重载,区别前置运算符重载,而不是表示参数类型

     类型  operator++( int )               

      类型  temp(* this);

      //...

      //...

      return temp;    }

 

     前置和后置自增运算符重载函数在函数体中的区别就在于是最后返回的是自增完的对象(*this)还是自增之前的对象(temp),其他地方没有任何区别。

 

 

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有