| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 643 人关注过本帖
标题:[求助]请教一个关于&的问题
取消只看楼主 加入收藏
梦魇琴嚣
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-2-14
收藏
 问题点数:0 回复次数:2 
[求助]请教一个关于&的问题

比如有种情况 定义了两个类A和B 在B中定义了个函数m 它的返回值类型是A类的对象
class A
{....};
class B
{
....
A& m()
{...}
....
};
我看教科书上是这么写的 请问这个&在这里是啥意思?是说返回值是类的对象的函数都要这么写吗?为什么返回值是一般数据类型的就不用写这个&呢? 还是说书印错了。。。。- -!


问题很菜 还繁请前辈赐教

搜索更多相关主题的帖子: 教科书 
2006-02-27 02:44
梦魇琴嚣
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-2-14
收藏
得分:0 

感谢几位的帮助 不知道我理解的对不对

也就是说 也可以写成A m() {...} 只是基于效率的考虑 写成A& m(){..} 效率更高 而这两种写法都是返回A类的一个对象 结果是相同的?

2006-02-27 15:01
梦魇琴嚣
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-2-14
收藏
得分:0 

忠心感谢斑竹姐姐如此耐心 小弟愚钝还想再麻烦姐姐一下

您所说的关于“等于”的这个事情和我上面说的那个问题有什么联系呢? 还是说只是一个对我的忠告 您说的这是后续事宜里需要注意的地方?
因为我这里这个代码有点长 而且是那种最基本 最简单的东西 没啥价值 我觉得都写出来实在是浪费空间 其他部分我觉得我理解的是正确的 它是这么个意思:
比如A类有个成员函数叫v B类有刚才那个函数m m的作用就是返回A类的一个对象a 于是如下:
class A
{....
void v(int m,int n){}
...
};
class B
{.....
A& m()
{return a;}
};
void main()
{....
b.m().v(4,6); //b是B类的一个对象
....
}

2006-02-27 23:41
快速回复:[求助]请教一个关于&的问题
数据加载中...
 
   



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

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