【发布时间】:2010-06-26 15:13:55
【问题描述】:
我对 C++ 非常陌生,目前正在学习它。我有几个问题..
-
void DoSomething(const Foo& foo) 和 void DoSomething(Foo foo) 有什么区别? 如果我们不指定 & 那么 Foo 的实例会按值传递(不是引用)。除了在编译时不检查外,它与在参数中使用 const + & 相同。那么,为什么 const + & 会成为没有 & 和 const 的论点的最佳实践呢?
在 C# 中,传递对象是“通过引用”,但似乎不是在 C++ 中。
-
我正在阅读的书说成员函数通过引用传递隐式参数..
谁能给我隐式参数的样本并通过引用?我知道如果我们想通过引用传递对象,我们需要使用 & (例如 Foo(Person& p) )但是 C++ 如何通过引用传递对象以获取隐式参数?我读到 C++ 中的隐式参数就像 Contructor(string str) : strMemberVariable(str) {} ...
-
数组是唯一在 C++ 中通过引用传递的吗?
-
为什么我不能在 Foo 类中使用 Foo fInstance?
例子:
class Foo {
public:
Foo() { }
Foo(const Foo& f) : fInstance(f) { }
Foo fInstance;
};
提前致谢。
【问题讨论】:
标签: c++ pass-by-reference parameter-passing