引用

引用:是一个变量的别名,所谓的别名,就类似一个人的绰号一样,叫绰号就相当于叫这个人;
当引用作为函数的参数时,可以不用进行初始化;

  1. #include<iostream>
  2. using namespace std;
  3. void swap(int& a,int& b)
  4. {
  5. int temp=a;
  6. a=b;
  7. b=temp;
  8. }
  9. int main()
  10. {
  11. int a=100;
  12. int b=666;
  13. swap(a,b);
  14. cout<<"a的值为:"<<a<<endl;
  15. cout<<"b的值为:"<<b<<endl;
  16. return 0;
  17. }

运行结果:
a的值为:666
b的值为:100

特殊的引用:const引用

声明: const type& name=Var;
例如: const int& b=a; 就是新声明了一个变量的引用b;
这个就等价于: Type* const name;
const引用让变量只拥有了只读属性;

引用的本质:
image.png
引用的存储空间:
const引用a初始化的是一个常量1,但却能被修改成功,说明a有自己的一段存储空间
而const引用b被指针修改后,变量c也跟着改变,说明const引用b和变量c的存储空间是一起的
所以,在C++中,const修饰的是常量,而const &修饰的是只读变量(可以通过指针修改值)