C++中的引用&

来源:互联网 发布:creo4数据交换配文件 编辑:程序博客网 时间:2024/05/19 17:58

1,对变量的引用:

格式:数据类型 &别名=已定义的变量名

#include<iostream>using namespace std;int main(){int m =30;int &n=m;cout<<"m: "<<m<<endl;cout<<"n: "<<n<<endl;n=80;cout<<"m: "<<m  <<"   "<<&m<<endl;cout<<"n: "<<n  <<"   "<<&n<<endl;system("pause");return 0;}

但是在使用引用需要注意以下几点问题:

(1)定义引用时,必须立即对其进行初始化,不能以后再赋值

(2)引用其实是一种隐式指针,可以少用“*”。

(3)引用不可以重新赋值,不可以作为另一个变量的别名

(4)不能建立指向引用的指针,不能建立引用的引用,也不能建立引用数组。

2,对函数参数的引用:

#include <iostream>using namespace std;void swap(int & m,int &n){int temp;temp=m;m=n;n=temp;}void main(){int a=2,b=4;cout<<"a="<<a<<"b="<<b<<endl;swap(a,b);cout<<"a="<<a<<"b="<<b<<endl;system("pause");}

通过代码和运行结果我们可以发现,使用引用作为函数参数时,传递的是地址,而不是值,引用参数的方法可以代替C语言中指针地址的调用方式

3,函数的返回值

#include <iostream>using namespace std;int a[]={1,3,5,7,9};int &index(int); //声明引用函数void main(){index(2)=25; //将a[2]重新赋值cout<<index(2)<<endl;system("pause");}int &index(int i){return a[i];}



0 0