| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 964 人关注过本帖
标题:关于引用的问题
只看楼主 加入收藏
最近不在
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:204
专家分:842
注 册:2010-2-28
收藏
得分:0 
char CwjbString::operator [] (const int n)不考虑const的缘故,没引用,就不能对下标值进行修改。

如果cin>>a>>b,要加引用时必须的。因为原始的只能读取一个。如果是cin>>a.则影响不大
2010-05-28 18:12
code_guy
Rank: 2
等 级:论坛游民
帖 子:28
专家分:33
注 册:2010-5-26
收藏
得分:0 
我晕VS发现 在同意文件内的时候   引用的效果等同于 函数声明参数类型不匹配 哈哈  郁闷了 好久了
2010-05-28 20:05
安普留香
Rank: 2
等 级:论坛游民
帖 子:77
专家分:62
注 册:2010-5-17
收藏
得分:0 
重载赋值符=时,返回值没有必要用引用吧?!这里的代码是我从书上弄来的,书上说要返回引用,我把引用去了结果也一样
程序代码:
#include <iostream>
using namespace std;
class cat
{
public:
cat();
int getage() const {return *itsage;}
int getweight() const{return *itsweight;}
void setage(int age){*itsage=age;}
cat operator=(const cat&);
private:
int *itsage;
int* itsweight;
};
cat::cat()
{
itsage=new int;
itsweight=new int;
*itsage=5;
*itsweight=9;
}
cat cat::operator=(const cat & rhs)
{
if(this==&rhs)
return *this;
*itsage=rhs.getage();
*itsweight=rhs.getweight();
return *this;
}
int main()
{
cat frisky,newsky;
cout<<"frisky's age:"<<frisky.getage()<<endl;
cout<<"setting frisky to 6...\n";
frisky.setage(6);
cat whiskers;
cout<<"whiskers'age:"<<whiskers.getage()<<endl;
cout<<"copying frisky to whiskers..\n";
newsky=whiskers=frisky;
cout<<"whiskers' age:"<<whiskers.getage()<<endl;
cout<<"newsky's age"<<newsky.getage()<<endl;
system("pause");
return 0;
}


2010-05-28 20:23
快速回复:关于引用的问题
数据加载中...
 
   



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

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