【发布时间】:2011-01-20 09:15:06
【问题描述】:
我刚学c++,从c开始,书中看到的一些函数调用让我很困惑:
char a;
cin.get(a);
在 C 中,这不可能工作,如果你这样做,将无法获得输出,因为你是按值传递,而不是通过引用,为什么这在 c++ 中工作?引用和取消引用是隐式的(编译器知道 cin.get 需要一个指针,所以它被引用了)?
【问题讨论】:
-
C 没有引用,只有值。 C++ 有另一个实例的实际引用、别名。
-
那么一元 & 运算符的名称是什么?我以为是引用运算符。
-
& 在 C 中表示“地址”。在 C++ 中,& 表示“地址”(如果在变量前面使用)或“引用”(如果在参数类型之后使用)。
标签: c++ pointers reference pass-by-reference pass-by-value