引用必须初始化。因为引用一经定义,它就不能再指向其他对象了,所以需要进行初始化。
但引用不能用引用对象的地址进行初始化。如果想对对象的地址进行引用,可以定义一个指针引用。
这里,b就是一个引用,b实际上指向的是a的地址,但它不是指针,是引用,是a的别名,a能做的b都能做。
实际应用中,引用主要被用来作为函数的形式参数。
引用在内部存放的是一个对象的地址,它是该对象的别名。对于不可寻址的值,如字符串常量,以及不同类型的对象,编译器为了实现引用,必须生成一个临时对象,引用实际上指向该对象,但用户不能访问它。这时当引用用来作为函数形参时就引入了const引用问题。

总结: