欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

C++笔记之谈谈【引用】的那些事

程序员文章站 2022-03-02 21:13:55
...

一. 引用的概念

闲扯:在上大学的时候,学习C语言,就被指针折磨的死去活来,现在想想,老师怎么就那么不懂我们的心,把我们带上了不归路。

引用是C++中较C新增的功能,他是对指针的二次封装(重要)。

变量名,本事是一段内存的引用,即别名。此处引入的引用,是为已有变量起一个别名。

声明如下:

int m;
int &rm = m;

二.特点

1. 类型与原类型保持一致,且不分配内存,与被引用的变量有相同的地址。

此特点可以用于函数的形参定义;

int GetContent(char* &ch,int& n)


2. 声明的时候必须初始化,一经声明,不可更改。

这里说的更改是更改内容地址,即声明之后,内容地址的不变的;

int m,n;
int &rm = m;
int &rm = n; // 错误,不可更改原有的引用关系


3. 可以对引用再次引用,多次引用的结果,是某一个变量具有多个别名。

int m;
int &rm = m;
int &&rrm = rm;
4. &符号前有数据类型时,是引用,其他的情况皆为取地址。

int m;
int &rm = m; // &为引用
cout<<"&rm = "<<&rm<<endl; // &为取地址


前方高能请注意:

引用的本质是指针,C++对裸露的内存地址(指针)做了一次包装,又取得指针的优良特性,所以,在对引用取地址,建立引用的指针没有意义了。

即,

♦ 没有引用的引用

♦ 没有引用的指针

♦ 没有引用的数组


上一篇: scrapy item pipeline

下一篇: scrapy_items