3.引用

通过程序的运行来了解一下引用。 

#include <iostream>
using namespace std;
int main()
{
	int a = 99;
	int &b = a;//引用声明时必须初始化
	int c = 88;
	//输出ab的地址
	cout << "&a=" << &a << "\n&b=" << &b << endl;
	//改变前的值
	cout << "改变前的值a=" << a << "b=" << b << endl;
	//a++后的值
	a++;
	cout << "a++后的值a=" << a << "b=" << b << endl;
	//b++后的值
	b++;
	cout << "b++后的值a=" << a << "b=" << b << endl;
	//b又引用c
	b = c;
	//输出abc的地址
	cout << "&a=" << &a << "\n&b=" << &b << "\n&c="<<&c<<"\nb=c后的地址"<<&b<<endl;
	cout << "b又引用c  a=" << a << " b=" << b << " c=" << c << endl;
	//c++后的值
	c++;
	cout << "c++后的值  a=" << a << " b=" << b << " c=" << c << endl;
	//b++后的值
	b++;
	cout << "b++后的值  a=" << a << " b=" << b << " c=" << c << endl;
	//a++后的值
	a++;
	cout << "a++后的值  a=" << a << " b=" << b << " c=" << c << endl;
	cin.get();
	return 0;
}

通过程序可以看到:

1.在b引用了a后,b的地址就等于a的地址。

2.a的值改变b的值也跟着改变。

3.b的值改变a的值也跟着改变。

在b又“引用”c后,b的地址仍然与a相同,而与c无关,b=c;语句是将c的值赋值给b,而b是a的引用,因此a=c;b=c;

在后面的代码中,无论c如何变化都不会影响ab的值。

简而言之,可以通过初始化来设置引用,但不能通过赋值来设置。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值