c++中&的用法

如题所述

  在c++里,除了c语言的功能之外,还代表“引用”

  只能在创建变量的时候使用,格式是:类型 &变量名=另一个变量。如:

  inta=0,&b=a,c;

  声明三个变量a、b、c,b和a等价,c是独立的变量

    注意:

  类型标识符是指目标变量(等于号右边)的类型。

  声明引用时,必须同时对其进行初始化,不能让他指向其他变量。

  引用的声明符放置在变量名的前面,和*操作符的用法一样

  引用声明完毕后,相当于目标变量名有两个名称,即该目标原名称和引用名,且不能再把该引用名作为其他变量名的别名。 ra=1; 等价于 a=1;

  声明一个引用,不是新定义了一个变量,它只表示该引用名是目标变量名的一个别名,它本身不是一种数据类型,因此引用本身不占存储单元,系统也不给引用分配存储单元。故:对引用求地址,就是对目标变量求地址。&ra与&a相等。

  可以建立数组的引用。

  #include<iostream> using namespace std; int main() { int m[10]={1,2,3,4,5,6,7,8,9,10}; int (&n)[10]=m; for(int i=0;i<10;i++) cout<<m[i]<<' ' ; cout<<endl; for( i=0;i<10;i++) cout<<n[i]<<' ' ; cout<<endl; return 0;}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-11-27
& 且;a&b,a满足时b也要满足。明白?和 | 是一起的,a | b 是 就是a或者b,!这个就是非了。
第2个回答  2011-11-27
&有三种用法取地址,引用,按位与操作
第3个回答  2011-11-27
&有好多意思
1、位运算符,按位与
2、取地址运算符,取得对象的地址
3、引用,一个变量的别名
第4个回答  推荐于2016-05-03
取地址 例如
int a=0;
int *p=&a;
引用 例如
int b=0;
int &c=b;
按位与操作
int d=0;
int e=1;
int f=d&e;追问

那么这里呢void change(string &,string &);

追答

这是引用
原型void change(string &a, string &b);
当给change函数传入实参(c,d)时,就相当于string &a=c, string &b=d;
亦即将c,d的引用当做实参,可以不用生成一个副本,也可以在函数中同时修改实参。

本回答被提问者采纳
相似回答