码迷,mamicode.com
首页 > 编程语言 > 详细

c++ 面试题疑点 1

时间:2015-07-25 22:52:06      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:

参看博文章:http://www.cnblogs.com/fangyukuan/archive/2010/09/18/1829871.html


疑点1

不能返回函数内部new分配的内存的引用(这个要注意啦,很多人没意识到,哈哈。。。)。 这条可以参照Effective C++[1]的Item 31。虽然不存在局部变量的被动销毁问题,可对于这种情况(返回函数内部new分配内存的引用),又面临其它尴尬局面。例如,被函数返回的引用只是作为一个临时变量出现,而没有被赋予一个实际的变量,那么这个引用所指向的空间(由new分配)就无法释放,造成memory leak


疑点2

可以返回类成员的引用,但最好是const。 这条原则可以参照Effective C++[1]的Item 30。主要原因是当对象的属性是与某种业务规则(business rule)相关联的时候,其赋值常常与某些其它属性或者对象的状态有关,因此有必要将赋值操作封装在一个业务规则当中。如果其它对象可以获得该属性的非常量引用(或指针),那么对该属性的单纯赋值就会破坏业务规则的完整性。

 


疑点3

 


 

c++ 面试题疑点 1

标签:

原文地址:http://www.cnblogs.com/pencilCool/p/4676631.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!