1、引用必须初始化
int& a; //错误
int n;
int& b = n; //正确
2、引用不能为空
char* p = NULL; //正确
char& q = p; //错误
3、引用指向一个变量后,它的指向不会再发生改变
int a;
int b;
int& m = a;
m = b; //改变的不是m的指向,这时候a也等于b了
4、应用区别
在以下情况应该使用指针:
①考虑到存在不指向任何对象的可能
②需要能在不同的时刻指向不同的对象
如果总是指向一个对象,并且一旦指向一个对象后就不会改变指向,那么应该使用引用。