C++基础 (1)
指针和引用
- 两者之间的区别
指针是用来指向某一块内存地址的变量,在定义时存在自己的内存,我们可以通过指针修改指向地址的内容,一般定义时还没确定指向时可以赋值为NULL(C写法)或nullptr(C++写法)。
引用是一个变量的别名,没有自己的内存空间,定义时就需要初始化,修改引用的值就是在修改变量的实际值,引用底层就是使用指针实现的。 - 什么时候使用指针
1.传递大型结构并且"只读"其元素的时候,因为大型结构通过值传递,需要拷贝其每个元素, 这样效率太低。
2.动态分配空间时,使用指针。 - 什么时候使用引用
对于引用不能为空的特点,当传递的参数确定不能为空时,使用引用会提高效率,不用做合法性检查。