免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2127 | 回复: 9
打印 上一主题 下一主题

[C++] C++类的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-08-04 18:53 |只看该作者 |倒序浏览
v o i d f (D a t e & d )
{
/ / ...
d .a d d _ d a y (1 ).a d d _ m o n t h (1 ).a d d _ y e a r (1 );//这样可以吗 有本书上这么写的,以前没见过
/ / ...
}

Date是个类 a d d _ d a y ( ),a d d _ m o n t h ( ),a d d _ y e a r ()是成员函数

论坛徽章:
0
2 [报告]
发表于 2007-08-04 18:55 |只看该作者
no problem

论坛徽章:
0
3 [报告]
发表于 2007-08-04 19:11 |只看该作者
请问ls的,它是什么功能啊
和d .a d d _ d a y (1 ),
d.a d d _ m o n t h (1 ),
d.a d d _ y e a r (1 );
一样吗?

论坛徽章:
0
4 [报告]
发表于 2007-08-04 19:16 |只看该作者
不一定一样,要看实现.
这不是什么特殊的功能,
只是add_day等函数的返回值是Date&类型的
而函数内部返回return *this; (一般是这样)
这样就可以连写了
你找本C++的书看看就知道了

原帖由 hantom 于 2007-8-4 19:11 发表
请问ls的,它是什么功能啊
和d .a d d _ d a y (1 ),
d.a d d _ m o n t h (1 ),
d.a d d _ y e a r (1 );
一样吗?

论坛徽章:
0
5 [报告]
发表于 2007-08-04 19:18 |只看该作者
原帖由 hantom 于 2007-8-4 19:11 发表
请问ls的,它是什么功能啊
和d .a d d _ d a y (1 ),
d.a d d _ m o n t h (1 ),
d.a d d _ y e a r (1 );
一样吗?

如果每次成员函数返回引用,那就是一样的效果

论坛徽章:
0
6 [报告]
发表于 2007-08-04 19:22 |只看该作者
不是 the c++上的吗,写了为什么要这样,以及怎么才能这样使用

论坛徽章:
0
7 [报告]
发表于 2007-08-04 19:23 |只看该作者
说句抬杠的话

如果返回的不是*this的话,可真不一定一样

原帖由 tyc611 于 2007-8-4 19:18 发表

如果每次成员函数返回引用,那就是一样的效果

论坛徽章:
0
8 [报告]
发表于 2007-08-04 19:26 |只看该作者
原帖由 ypxing 于 2007-8-4 19:23 发表
说句抬杠的话

如果返回的不是*this的话,可真不一定一样


我不信你写这个程序会返回一个局部变量的引用(注意LZ提供的成员函数的接口)

论坛徽章:
0
9 [报告]
发表于 2007-08-04 19:39 |只看该作者
原帖由 flw2 于 2007-8-4 19:22 发表
不是 the c++上的吗,写了为什么要这样,以及怎么才能这样使用


The state update functions a d d _ y e a r (), a d d _ m o n t h (), and a d d _ d a y () were defined not to return
values. For such a set of related update functions, it is often useful to return a reference to the
updated object so that the operations can be chained. For example, we would like to write...

这就是你说的吗

论坛徽章:
0
10 [报告]
发表于 2007-08-04 19:41 |只看该作者
还可以返回一个对全局变量的引用,对静态变量的引用...


原帖由 tyc611 于 2007-8-4 19:26 发表

我不信你写这个程序会返回一个局部变量的引用(注意LZ提供的成员函数的接口)
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP