| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 983 人关注过本帖
标题:关于运算符重载
只看楼主 加入收藏
endless
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2008-8-3
收藏
 问题点数:0 回复次数:6 
关于运算符重载
在《Thinking in  C++》中的一段代码如下:
#include<iostream>
using namespace std ;
class  integer
{
  int i ;
  public:
      integer(int ii):i(ii){}
      const integer
      operator+(const integer&rv)const
      {
       cout<<"operrater+"<<endl;
       return integer(i+rv.i);
      }
  integer&
      operator+=(const integer&rv)
  {
      cout<<"operater +="<<endl ;
      i+=rv.i ;
      return *this ;
  }

};
     int main()
     {
         cout<<"buit-in types:"<<endl;
         int i=1,j=2,k=3 ;
         k+=i+j;
         cout<<"user-defined types:"<<endl;
         integer ii(1),jj(2),kk(3) ;
         kk+=ii+jj ;
    
     }  

一直对代码里return *this ,这个*this指针不了解,还有为什么需要在public定义const integer 它的作用是什么
?谢谢解答了~
搜索更多相关主题的帖子: 运算符 重载 
2008-08-05 17:59
vfdff
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:2172
专家分:425
注 册:2005-7-15
收藏
得分:0 
this  就是对象本省的指针
2008-08-07 17:50
lovelifeVC
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2008-8-6
收藏
得分:0 
this 为指向对象本身的指针,也就是指向类实例的指针
const integer& 表示函数的参数为 对 const integer 型变量的引用
2008-08-08 13:38
endless
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2008-8-3
收藏
得分:0 
回复 3# lovelifeVC 的帖子
受教了 谢谢解答
2008-08-09 11:48
zhanghj
Rank: 1
来 自:江苏盐城
等 级:新手上路
帖 子:56
专家分:0
注 册:2007-11-24
收藏
得分:0 
operator+(const integer&rv)const
      {
       cout<<"operrater+"<<endl;
       return integer(i+rv.i);
      }
返回的为什么用return integer(i+rv.i);
用return i+rv.i;为什么也行?
2008-08-09 19:52
树上的番茄
Rank: 1
来 自:湖南
等 级:新手上路
帖 子:32
专家分:0
注 册:2008-3-1
收藏
得分:0 
重载为成员函数,须返回*THIS
2008-08-12 11:08
elegant87
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2008-1-15
收藏
得分:0 
学习
[bo][un]lovelifeVC[/un] 在 2008-8-8 13:38 的发言:[/bo]

this 为指向对象本身的指针,也就是指向类实例的指针
const integer& 表示函数的参数为 对 const integer 型变量的引用


学习了!
2008-08-12 15:38
快速回复:关于运算符重载
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019292 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved