- A+
所属分类:C++
使用引用的注意事项
(1)引用必须在定义的时候进行初始化,引用建立了一个绑定关系。如果引用为成员变量,那么可以在声明的时候不进行初始化,但是一定要在并且只能在构造函数的初始化列表中进行绑定。
定义的时候初始化引用,如果用const修饰,只会存在一种情况,那就是不能通过该引用修改绑定变量的值,如上,不能通过z来改变x的值,但是可以直接修改x的值。
如果函数传参使用引用,那么将会在函数调用时候进行引用的初始化,建立绑定关系,可以在函数里面对x进行修改,然后外面的y也会同时改变。
(2)一旦引用初始化,在运行时不能改变绑定关系的,也就是说引用不能二次赋值。
(3)函数传参时,形参如果是引用,那么,实参必须有内存地址
i*3有结果,但是没有内存地址,因此报错。
(4)不能用一个引用来指向另一个引用
(5)不能用指针来指向引用(引用的地址不可取),但是可以有绑定指针的引用
(6)没有引用类型的数组。因为引用不是一个实体,它是依赖于变量的存在,所以没有引用数组。
引用和指针的比较
引用 |
指针 |
不能为null |
可以为null |
必须依赖某个已有的变量,是变量的别名 |
指针是独立的,不依赖于其他变量 |
初始化后不可能再指向新的变量 |
指针初始化后可以改变指向的地址,指向新的变量 |