引用和指针一直是个模糊的概念,这回通过二级C++,以考促学,让我对引用和指针有了明确的认识,不一定要正确,至少我的理解已不再模糊。
相同点:
都是地址的概念;
本质区别:
- 指针是一个实体,指向一块内存,它的内容是所指内存的地址;而引用仅是某块内存的别名。
- 引用,只能使用该引用指向的整体;而指针,可以把该指针指向的整体分割,比如4个字节的整数。
语法区别
- 引用必须初始化,指针不是必须的。
- 引用初始化后不能被改变,从一而终;指针可以改变所指的变量。
- 不存在指向空值的引用,但是存在指向空值的指针。
- 指针可以进行加减法运算,而引用进行运算的话没有实际意义。