C++指针和引用的区别

来源:互联网 发布:种草网络语的英文 编辑:程序博客网 时间:2024/05/21 22:39

相同点: 指针和引用都是地址的概念, 指针指向一块内存,他的值是这块内存的地址;而引用是一块内存的别名。

区别: 指针是一个实体,而引用是一个别名。

(1) 非空区别。指针可以为空(NULL),而引用必须总是初始化,指向某一个变量。

(2) 合法性区别。使用引用之前不需要测试它的合法性,而使用指针之前必须测试它的合法性,防止其为空。

(3) 可修改区别。指针可以被重新赋值以指向不同的内存区域,而引用必须在定义的时候被初始化,并且以后不能改变。

(4) 对于++的意义不一样。

(5) 对sizeof()操作符, 引用的结果是 引用所指向的变量的类型大小,而指针是指的指针类型的大小

0 0