C++引用(Reference)

一、什么是引用

在C++中,引入引用就是为了避免指针在使用过程中可能出现的问题(空指针,不合法内存),提高程序的安全性。

引用是一种关系型声明的类型,说明它跟别的变量的关系,它所声明的变量不占内存空间,通俗来讲,是已有变量的别名,来说明跟已有变量的关系,所以引用变量的类型要跟已有变量的类型保持一致。

引用引入分析:

C++引用(Reference)_第1张图片

 二、引用的基本语法和注意事项

语法:type* --- 代表指针

type & ---> 引用类型 比如: int& ,char&

int --- int*(指针类型跟指向的类型保持一致)

在声明引用变量时,一定要说明跟其他变量的关系(必须初始化)

int i;

int& ri = i; //说明ri是i的别名,ri是引用类型声明变量

 C++引用(Reference)_第2张图片

 

 

#include 


using namespace std;

int main()
{
    int a = 10,b=20; //普通变量
 
    int& ra = a; //右值是一个变量名 --- 初始化,一经初始化,不可更改


    cout << &a =  << &a<

   引用是一种类型(type&),该类型的作用就是用来声明两个变量之间的关系
   引用在声明变量时,必须初始化----它声明的变量 ---被叫作引用变量

   总结:
     1)引用声明变量时,必须初始化
     2)引用变量一经初始化,不可更改
     3)一个变量可以被多次引用,每引用一次就多一个别名
     4)&符号前有数据类型时为引用 ,其他情况下,为取地址
 

 三、引用的应用

对于引用而言,如果只在一个函数中使用变量,没有必要使用引用,使用基本的数据类型就可以,基本的数据类型除了在函数中可以用来声明变量之外,还可以做函数的形参函数的返回值

#include 


using namespace std;

//编写一个函数,来修改外部变量b的值
//使用指针

void modify_b(int* p)// int* p是在函数内部声明的一个指针变量,要分配内存:4字节
{
    if(nullptr == p)
        return;


    *p = 200;
}

//使用引用
void modify_rb(int& rb) //int& rb = b 节省内存
{
    rb = 300;
}

int main()
{
    int b = 100;
    //int& rb = b; 同一个函数中,使用引用,意义不明显

    modify_b(&b); //传递变量的地址 32位占4字节

    cout << b <

你可能感兴趣的:(C++,c++,开发语言)