一 引用是什么?声明引用和使用引用时应该注意什么?
答:引用不是一种变量类型,只是一个变量的“别名”;
声明一个变量的引用时一定要初始化;
使用引用时要注意,一个变量的引用和这个变量对应这同一片内存。
二 使用引用作为函数形参有什么特点
1 因为引用和其所引用的变量对应同一片内存区域,所以使用引用作为
函数形参起到“传地址”的效果。
2 使用引用作为函数形参,在函数调用时并没有产生参数副本,当参数是
大对象时,无需调用对应类的构造析构函数,程序开销明显较低。
3 使用指针作为函数形参也起到“传地址”的效果,但是,其安全性不如
使用引用。因为在函数体内可能产生野指针,从而污染内存。
三 函数返回值使用引用类型时有什么特点?
1 因为无需产生对象副本,所以无需调用类的构造析构函数,开销低。
2 不能返回局部变量的引用。
3 不能返回在函数体内申请的内存区域的引用,因为不知道在哪释放这片内存,
容易造成内存泄漏。
4 不能返回类变量成员的引用,因为引用是变量左值,如果改类成员变量是
private性质的,将有可能对其private性质造成破坏。返回常引用则可以。
四 引用与多态
除了指针外,引用也可以产生多态效果。