C++的引用

引用就是变量的别名,引用符号&。

基本数据类型的引用:

#include<iostream>

using namespace std;

int main(){

int a=3;

int &b=a;// 引用必须初始化,相当于给a起一个别名b,对b的修改就是对a的修改

b=10;

cout<<a<<endl;

return 0;

}

 


结构体类型的引用:

typedef struct {

int x;

int y;

}Coor;

#include<iostream>

using namespace std;

int main(){

Coor c1;

Coor &c=c1;//c1起一个别名c

c.x=10;

c.y=20;

cout<<c1.x<<”,”<<c1.y<<endl;

return 0;

}

 

指针类型的引用:

类型 *&指针引用名=指针;

#include<iostream>

using namespace std;

int main(){

int a=10;

int *p=&a;//p指向a

int *&q=p;//p创建一个别名q

*q=20;

cout<<a<<endl;

return 0;

}

 

 

引用做函数参数

 

没有引用情况:

void fun(int *a,int *b){

int c=0;

c=*a;

*a=*b;

*b=c;

}


int x=10,y=20;

fun(&x,&y);//地址

 

函数引用:

void fun(int &a,int &b){//起别名,相当于ax的别名,by的别名

int c=0;

c=a;

a=b;

b=c;

}


int x=10,y=20;

fun(x,y);


例子:

#include<iostream>

#include<stdlib.h>

using namespace std;


int main(void){


system(“pause”);

return 0;

}


posted @ 2017-06-26 10:21  狼太白  阅读(129)  评论(0编辑  收藏  举报