【C++ 基础】——引用

来源:互联网 发布:布点算法 编辑:程序博客网 时间:2024/06/15 17:46
1.基本数据类型的引用
#include <iostream>int main(void){    int a=3;    int &b=a;//引用必须初始化        b=10;    cout<<a<<endl;    return 0;}

输出结果:10

改变的引用&b的值,a的值也跟着变


2.结构体类型的引用

typedef struct{    int x;    int y;}Coor;

#include <iostream>using namespace std;int main(void){    Coor c1;    Coor &c=c1;    c.x=10;    c.y=20;    cout<<c1.x<<c1.y<<endl;    return 0;}
输出结果:10,20

改变的引用&c的值,c1的值也跟着变


3.指针类型的引用
类型 *&指针引用名=指针;

#include <iostream>using namespace std;int main(void){    int a=10;    int *p=&a;    int *&q=p;    *q=20;    count<<a<<endl;    return 0;}
输出结果:20

*q的值改变,*&q跟着变,*p跟着变,a跟着变


4.C中用指针做函数参数

void swap(int *a,int *b){    int c=0;    c=*a;    *a=*b;    *b=c;}int x=1,y=2;swap(&x,&y);


5.C++中用引用做函数参数
void swap(int &a,int &b){    int c=0;    c=a;    a=b;    b=c;}int x=1,y=2;swap(x,y);


0 0