✎
编程开发网
首页
C语言
C++
面试
Linux
函数
Windows
数据库
下载
搜索
当前位置:
首页
->
基础
->
c++编程基础
C++箴言:避免返回对象内部构件的句柄(二)
2014-11-24 13:16:35
·
作者:
·
浏览:
19
标签:
箴言
避免
返回
对象
内部
构件
制没什么关系。它与那个成员函数返回的句柄本身是否是 const 没什么关系。全部的问题在于一个句柄被返回了,因为一旦这样做了,你就面临着这个句柄比它引用的对象更长寿的风险。
这并不意味着你永远不应该让一个成员函数返回一个句柄。有时你必须如此。例如,operator[] 允许你从 string 和 vector 中取出单独的元素,而这些 operator[]s 就是通过返回引向容器中的数据的引用来工作的――当容器本身被销毁,数据也将销毁。尽管如此,这样的函数属于特例,而不是惯例。
Things to Remember
避免返回对象内部构件的句柄(引用,指针,或迭代器)。这样会提高封装性,帮助 const 成员函数产生 cosnt 效果,并将空悬句柄产生的可能性降到最低。
首页
上一页
1
2
下一页
尾页
2
/2/2