免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: lipingtababa
打印 上一主题 下一主题

[C++] 你们的代码会用引用吗? [复制链接]

论坛徽章:
0
161 [报告]
发表于 2008-12-01 10:37 |只看该作者

回复 #135 newcuusre 的帖子

赞同,C++的运算符重载是个得不偿失的东西!程序员都可在自己设计的类中按自己的想法给运算符号添加新概念,就像让自然语言允许每个人随便造字造词,怎么能很好交流呢?

论坛徽章:
0
162 [报告]
发表于 2008-12-01 11:43 |只看该作者
那些访问控制符private、protected、public也是些垃圾东西!常理讲,类的数据成员应该都为私有,但C++还允许你把它们定义为公有向外公开,这就是C++在告诉你:这样做是错误的,但你可以这样做。
你看,C++是多么犯贱呀。

[ 本帖最后由 vktri 于 2008-12-1 11:45 编辑 ]

论坛徽章:
0
163 [报告]
发表于 2008-12-01 15:16 |只看该作者
还在争论啊

论坛徽章:
0
164 [报告]
发表于 2008-12-01 22:41 |只看该作者
原帖由 思一克 于 2008-11-24 16:28 发表

#include

int &func1(int &i)
{
static int j = i + 8;
   i = 250;
   printf("j = %d\n", j);
   return j;
}

main()
{
int i = 2;
int j;
   printf("i = %d\n", i);
   j = func1(i);
...



摆脱你搞清楚int & 和 const int &先。这是你的设计存在问题,而不是引用本身的问题。

论坛徽章:
0
165 [报告]
发表于 2008-12-02 09:11 |只看该作者
你设想main()是你写的. func是你分配别人写的.
如果是传值, 别人的错误无所谓.
若用引用,别人的错误就有麻烦.

注意, 我说的是"错误".

还有, 上面有人说交叉看的问题. 如果代码是用引用传递的, 那么读代码的工作量会增加很多. 代码更难读了. 这应该没有疑问吧.
因为你必须交叉看. 仅仅看调用者这里不行了.


原帖由 coneagoe 于 2008-12-1 22:41 发表



摆脱你搞清楚int & 和 const int &先。这是你的设计存在问题,而不是引用本身的问题。

论坛徽章:
0
166 [报告]
发表于 2008-12-02 10:15 |只看该作者
没看完这个帖子,不过可以肯定的是,OIOIC又来了。。。

论坛徽章:
0
167 [报告]
发表于 2008-12-21 19:15 |只看该作者
原帖由 思一克 于 2008-12-2 09:11 发表
你设想main()是你写的. func是你分配别人写的.
如果是传值, 别人的错误无所谓.
若用引用,别人的错误就有麻烦.

注意, 我说的是"错误".

还有, 上面有人说交叉看的问题. 如果代码是用引用传递的, 那么读代 ...


这是那个写func的人的设计问题,不是引用本身的问题。如果你要说别人的错误,那我要告诉你错误无处不在,不管是引用还是指针,否则要你debug干嘛。

论坛徽章:
0
168 [报告]
发表于 2008-12-22 13:36 |只看该作者
原帖由 coneagoe 于 2008-12-21 19:15 发表


这是那个写func的人的设计问题,不是引用本身的问题。如果你要说别人的错误,那我要告诉你错误无处不在,不管是引用还是指针,否则要你debug干嘛。


所以说,引用比指针安全的说法是没道理的。

论坛徽章:
0
169 [报告]
发表于 2008-12-23 11:02 |只看该作者
说引用安全纯属无稽之谈!!!

论坛徽章:
0
170 [报告]
发表于 2008-12-26 09:04 |只看该作者
你写下C++的重载operator<<试下, 就知道引用不能被指针取代了

ostream& operator<<(ostream& os,const Point& pt)
{
        os<<"("<<pt.y<<","<<pt.x<<")\t";
        return os;
}
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP