关于地址运算符C / C ++

时间:2010-05-14 11:41:43

标签: c++

地址运营商意味着什么。

在下面的方法中说。

应该在方法中传递什么作为整数的参数值或整数变量的地址。

void func1(int&)// method declaration

void func1(int& inNumber)//method definition
{ 
//some code
}

5 个答案:

答案 0 :(得分:11)

那不是地址运算符 - 它是引用类型字符。这意味着,对于任何类型TT&都是T 的引用。巧合的是,这恰好与地址运营商的角色相同。

您可以将普通对象传递给此方法。无需采取任何进一步行动。阅读你最喜欢的C ++书中的参考文献。

答案 1 :(得分:3)

代码中没有address-of运算符 - &符号用于声明引用。你使用哪种C ++教科书不包括这个?

答案 2 :(得分:0)

在这种情况下,该函数引用一个由int &inNumber表示的int。

调用该函数就像使用值<:p>调用它一样

int x = 2;
func1(x);

从调用者的角度来看,这看起来与通过值函数完全相同,但在引用的情况下,函数可能确实改变了x的值。

答案 3 :(得分:0)

那不是地址运营商。在声明中,&表示它是引用

您可以将引用视为不需要取消引用的指针。*您只需说inNumber = 5;(而不是*inNumber = 5;),效果将在函数外部显示。

*注意:引用只是“您不必取消引用的指针”。有时,以这种方式思考它们会很有帮助。

答案 4 :(得分:0)