(C++)C++中引用的基础知识以及应用

一、引用的基本概念

引用的使用方式:&别名 = 原名

使用引用修改数据等同于用原名修改,数据都会发生改变。

注意
1.引用必须初始化

int &b; 这是错误的

2.引用初始化之后就不能改变

二、引用做函数参数

作用:函数传参时,可以利用引用的技术让形参修饰实参。
优点:可以简化指针修改实参。

#include "iostream"
using namespace std;

void mySwap01 (int a, int b)
{
	int temp =a ;
	a = b;
	b = temp;
}
void mySwap02(int *a, int *b)
{
	int temp = *a;
	*a = *b;
	*b = temp;
}
void mySwap03(int &a, int &b)
{
	int temp = a;
	a = b;
	b = temp;
}
int main()
{	
	int a = 10;
	int b =	20;
	mySwap01(a,b);
	cout << a <<endl << b<<endl;
	//值传递形参不会修饰实参
	mySwap02(&a,&b);
	cout << a <<endl << b<<endl;
	//地址传递形参会修饰实参
	mySwap03(a,b);
	cout << a <<endl << b<<endl;
	//引用传递形参会修饰实参
	system ("pause");
	return 0 ;
}

三、引用做函数的返回值

不要返回局部变量的引用


#include "iostream"
using namespace std;

//不要返回局部变量的引用
//局部变量会被自动释放掉
int& test01()
{	
	int a = 10;
	return a;
}
//函数调用可用做左值
int& test02()
{
	static int a = 10;
	return a;
}

int main()
{	
	int &ref = test02();
	cout << ref << endl;
	//如果要作为左值,那么必须要返回引用
	test02() = 1000;
	cout << ref << endl;
	system ("pause");
	return 0 ;
}

四、引用的本质

引用的本质是一个指针常量

指针常量:指针的指向可以修改,但指针的值不能修改。

在这里插入图片描述

五、常量引用


#include "iostream"
using namespace std;
void showValue(const int &val)	//防止修改的误操作
{
	//val = 1000;
	cout << "val = " << val <<endl;
}

int main()
{	
	int a = 100;
	showValue(a);
	system ("pause");
	return 0 ;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值