C/C++ 一些公共的内容已经说的差不多了,从这一篇开始将主要介绍 C++ 的内容,下面主要说一下 C++ 中的引用
如有侵权,请联系删除,如有错误,欢迎大家指正,谢谢
基本用法
- 引用是已定义的变量的别名(另一个名字)
- 变量的引用与变量指向相同的值和内存单元
- 引用在定义的时候就要初始化,且引用不能在指向其他的变量
// 基本数据类型的应用
引用作形参 & 返回值
- 引用变量的主要用途是用作函数的形参,与指针类似函数将不再进行实参到形参的拷贝,对于处理大型的数据结构提供方便
- 引用作形参如果不需要改变原数据的值,应尽量使用 const
- 使用 const 可以避免无意中修改数据的编程错误
- 使用 const 使函数能够处理 const 和非 const 实参,否则将只能接受非 const 数据
- 使用 const 引用使函数能够正确生成并使用临时变量
- 引用作为返回值时,需要注意不要返回被调用函数局部变量的引用,局部变量在函数执行结束会被系统释放
#include
引用和指针的区别
- 引用在声明的时候就要初始化,指针可以不初始化,但是一般指针会进行初始化,避免成为野指针
- 有空指针,没有空引用
- 引用不能指向其他变量,指针则可以任意指向
- 引用不占内存空间,指针占空间
- 引用效率更高,指针是间接操作
- 引用更安全,指针偏移可能会造成越界访问
- 指针更灵活,可以直接操作地址,指针更通用,C/C++都可以用
以上测试均是在win10 vs2017 64bit编译器下进行的