C++引用

来源:互联网 发布:js 添加div classname 编辑:程序博客网 时间:2024/05/16 06:34

引用是变量的别名

引用必须初始化,必须有一个真实的变量与之相对应,否则会出错

 int a = 3; int &b = a;

结构体类型的引用

#include<iostream>using namespace std;typedef struct{    int x;    int y;}Node;int main(){    Node a;    Node &b = a;    b.x = 10;    b.y = 20;    cout << b.x << '.' << b.y <<endl;    return 0;}
输出结果为10.20


指针类型的引用

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

#include<iostream>using namespace std;int main(){    int a = 10;    int *p = &a;    int *&q = p;    *q = 20;    cout << a << Lendl;    return 0;}

输出结果为20,改变了a的值。


引用作函数参数

不使用引用作参数时

#include<iostream>using namespace std;void swap(int *a, int *b){    int c = 0;    c = *a;    *a = *b;    *b = c;}int main(){    int x = 10;    int y = 20;    swap(&x, &y);    return 0;}
使用引用做参数时
#include<iostream>using namespace std;void swap(int &a, int &b){    int c = 0;    c = a;    a = b;    b = c;}
int main(){   int x = 10, y = 20;   swap(x, y);   return 0;}



0 0
原创粉丝点击