【发布时间】:2017-11-27 23:13:59
【问题描述】:
最近我一直在学习 C++ 的良好编程实践,发现许多程序通过引用将对象传递给函数,因此不会创建多个实例。我还了解到,传递一个常量引用可以防止原始对象被修改,但是我不明白它是如何工作的。常量引用不应该创建一个新实例,因为原始对象不能通过引用修改,但引用仍然可以像单独的对象一样使用?我相当肯定这不是它的工作方式,但是,它是如何工作的?有什么我错过的吗?
【问题讨论】:
-
似乎“传递一个常量引用可以防止原始对象被修改”的奇怪信念有一些流行。不,常量引用不会阻止修改原始对象。它只是防止对象被修改通过引用。
-
从我已链接的问题的答案中 有“const 引用”实际上是“对 const 的引用”,也就是说,您无法更改它们引用的对象的值到。
标签: c++ pass-by-reference