【发布时间】:2011-04-07 00:19:07
【问题描述】:
可能的重复:
When pass-by-pointer is preferred to pass-by-reference in C++?
Are there benefits of passing by pointer over passing by reference in C++?
How to pass objects to functions in C++?
大家好, 作为我的化学工程研究生研究的一部分,我正在开发一个大型的面向对象的 c++ 应用程序框架。
我发现我的许多函数都采用指向自定义对象或 STL 对象的指针。我发现在编写代码方面,这使得访问存储在其中的函数或变量变得更加困难。
但是,除了简单之外,通过引用传递与通过指针传递有什么优点/缺点吗?
如果其中一个比另一个有优势,我可能会考虑重构我的代码以统一使用任何最佳方法。如果没有,我仍然可以重构以始终使用通过引用传递以提高可读性(即不必取消引用)
再次,我想做出最好的决定,因为我的框架已经有 40 多个文件了,所以我想尽可能早地实现尽可能统一的结构,并使用任何最佳方法。
提前致谢!
【问题讨论】:
-
更难?输入
->而不是.? -
这是另一种问“我知道它已经被问过很多次了。但是让我再问一遍,也许你不会注意到这是一个骗子。”真的:) 请参阅“相关”链接。很多相同的问题。
-
BTW 根据 c++ gist,尖括号越多,代码越好。所以我建议不要强化按值或按引用。但是在
boost::call_traits<ParameterType>::param_type。玩得开心 -
@Beta ... 和 var pass 上的 "(&..." ... ;o) ...至于这是一个骗局,我深表歉意。我应该通过删除关闭这个话题吗?我查看了前几个链接,但它们听起来不像是在问我的问题。
标签: c++ pointers function reference pass-by-reference