引用即别名,只是为一个已经存在的对象所起的另外一个名字。引用并非对象。
指针也实现了对其他对象的间接访问,但两者有如下不同点:
- 指针本身就是一个对象,允许对指针赋值和拷贝,而且在指针的生命周期内可以先后指向不同的对象。
- 指针无需在定义时赋初值(建议指针要初始化,否则后续程序错误时很难查出问题点),和其他内置类型一样,在块作用域内定义的指针如果没有被初始化,也将拥有一个不确定的值。
- 引用一旦定义,就无法令其在绑定另外的对象,指针和它存放的地址就没有这种限制。
引用即别名,只是为一个已经存在的对象所起的另外一个名字。引用并非对象。
指针也实现了对其他对象的间接访问,但两者有如下不同点: