C++函数参数中的"&"号是什么意思呢?

近日看到某些VC中的函数参数是这么写的,int func(int &count) ,在形参“count”前加了一个"&"符,这是什么意思呢?能够起到什么作用呢?恳请大家回答。谢谢

在函数的声明或定义中,形参带'&'号,表示形参是该类型的引用类型。所谓引用是一个变量的别名,这样对形参的修改会反映在实参上。

比如要实现交换就可以用

void swap(int &a, int &b)
{
    int tmp = a;
    a = b;
    b = tmp;
}

在函数的调用中,实参带'&'号,表示取地址运算,结果是一个指向操作变量的指针。

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-02-28
引用,即给一个变量取别名,他们还是同一个变量,就是比如a=0;调用 func(a);再函数里面count++;函数结束后会改变a的值,a这时候等于1.建议去看C++ Primer,经典必读书籍
第2个回答  2011-02-28
引用,创建一个count的复本,这样就不会更改你传递进来的参数值了,当然如果你想改变的话的应该用指针:int func(int * count)
第3个回答  2011-02-27
1取地址;
int i=1;
int pi=&i;
2位运算,表求按位与
int a=1,b=3;
int c=a&b;
3引用
int a;
int &b=a;//b是a的引用,b等同于a
这是 sun_siliang 的答案
第4个回答  2011-02-27
int &count它有什么功能,
countLeaf(struct BINode *root,int &count)
{
if(!root)return 0;
{
if((!root->lchild)&&(!root->rchild))
return 1;
else{
m=count(root->lchild);
n=count(root->rchild);
return m+n;
}
}
}

这个函数传入的第二个参数是一个函数地址的引用
count(root->lchild) //而这里就是调用这个函数 目的应该是求根结点左孩子这边的叶子结点数

C++参数前加&是什么意思?
} 说通俗点就是用来让函数的参数被赋予实际的值,而不是在函数运行完后参数就没作用了,这个在学数据结构哪里用的很多 谢谢~

C++中的符号"&"的各种含义(要全的)
1)位运算里&表示位与运算,就是1&1=1,0&1=0,0&0=0 2)逻辑运算&& 与运算,A&&B 当两个都成立时才能成立,值为1 3)&取地址符 &i 取得变量i的地址 4)引用符,在函数编写中形参名前加& 表示这个参数是传地址的,即直接对该参数操作 如void add(int &a){} 采纳哦 ...

c语言参数里这个符号&
是取变量的地址啊,目的就是要把变量的地址传进函数内

请问C++中在函数中&是什么意思?
&意思就是别名,其实就是它本身。void set_date(Date& d)就是说传进的参数本身就是d,在内存中就这一个d,如果函数内对这个d修改了,相应内存中的那个d也改变了,因为他们是一个。void set_date(Date d),这样的话传入的参数是和d一样值得一个数,在内存中是对原来的d拷贝了一份使用。如果...

c++中函数参数中的&怎么用啊!急需高人指点!
&不但代表引用,还代表取址吧。int a = 3;int *b = &a;\/\/这里的&代表取址,定义一个指针,把指针指向a的地址 int &c = a;\/\/这里的&代表引用,为a定义一个别名c,其实a、c一样的内容,只是名字不同

C++ 这个语句中[&]是什么意思
[]:定义匿名函数 [&]:以引用形式捕获所有外部变量,也就是外部变量均可用 (string const &s) :匿名函数的参数 ->:定义匿名函数 unsigned:函数返回值类型 {...}:函数实现体

c++函数名后面加&什么意思,比如说void func&(Figure &p)
&是保留符号不能使用在变量名和函数名 int b;int & a = b;此时a 引用 b,它类似于指针,但是a并没有存储单元 void abc(int & a);当作为参数时,如果你在函数内修改 a 的值,那么实参也会改变 void abc(const int &a);当然,你只需要在前面声明它在该函数为只读时就不能修改了 通常引用...

在c++里&代表什么?经常在图中这种情况里看到但是不知道怎么用_百度知 ...
在 C++ 语言中,& 运算符有三种含义:(1) 位与运算符,如:int a = 2 & 3; \/\/ 按二进制位与运算,10 & 11 = 10, 所以结果为 10 进制的 2;(2) 取地址运算符,意为取某个变量的地址;(3) 用于定义变量的引用,如:int a = 100;int &b = a; \/\/ 引用必须在定义的时候...

c++后面的&是什么意思?
(2)使函数能直接操作实参,也就是函数通过操作形参来操作实参。当然这个用指针也可以实现,但引用看上去更容易理解,可读性也更强。注意在C++中有一个例外:异常处理中的catch中使用引用作参数时,所引用的其实是一个对象的拷贝而不是原对象!!!在设计函数的参数时考虑上面两个作用,如果只想减少...

C++类的成员函数前加&什么意思
这个和函数参数加地址符的作用是一样的,用于返值返回的是引用而不是赋值。也就是说,该函数返值会通过地址传送的方式给到函数调用者要求的返回值,这样可以节省对象赋值造成的内存浪费,通常用于返值是大型对象(而不是简单变量类型)的时候。比如你有个class T,而这个函数的返值是return T; 加上...

相似回答