重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
作用:给变量起别名
10年积累的成都做网站、成都网站建设、成都外贸网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站制作后付款的网站建设流程,更有大邑县免费网站建设让你可以放心的选择与我们合作。
语法:数据类型 &别名 = 原名
#include
using namespace std;
void change(int *a,int *b){ //基本的交换数字
int temp;
temp = *a;
*a = *b;
*b =temp;
}
int main(){
int a = 10;
int b = 20;
cout << &a << '\t' << &b << endl; //输出a和b的地址
change(&a,&b); //调用函数
cout << a << '\n' << b << '\n';
cout << &a << '\t' << &b << endl; // 再次输出a和b的地址
return 0;
}
#include
using namespace std;
int main(){
int a;
a = 10;
int &b = a;
b =20;
cout << &a << '\t' << &b << endl;
cout << a << '\t' << b << endl;
return 0;
}
对别名的的操作就是对原名的操作
引用时可以作为函数的返回值的
注:不要返回局部变量引用
函数调用作为左值(可以给它赋值)
我感觉是一个二级指针,是指向指针的指针
#include //引用做返回值
using namespace std;
int& test1(){//类型是引用型的
static int a = 10;//全局变量,全局区(程序结束后释放)
cout << &a <<"1"<< '\n';
return a;
}
int main(){
int &ref = test1();
cout << ref << '\n';
test1() = 1000;
cout << &test1() << "2" << '\n';
cout << &ref << "3" << '\n';
return 0;
a,test1(),ref这三个的地址是一样
本质:引用的本质在C++内部的实现是一个指针常量
const 引用
作用:常量引用主要用来修饰形参,防止误操作
在函数形参列表中,可以加const修饰形参,防止形参变成实参
#include //引用常量
using namespace std;
void printf(const int &val){
//val = 1000; 加了const后就不可以修改了哦
cout << "val=" << val << endl;
}
int main(){
//const 之后相当于 int temp = 10; const int &ref = temp;
//const 之后ref变成了只读的状态,不可以修改
//const int &ref = 10;//引用必须引一块合法空间
int a = 100;
printf(a);
return 0;
}