C++ 引用和指针区别-LMLPHP

C++ 引用和指针区别

1、指针有自己的一块空间,而引用只是一个别名;

2、指针可以被初始化为NULL,而引用必须被初始化且必须是一个已有对象的引用;

3、指针和引用使用++运算符的意义不一样。

指针

指针的特殊之处在于:指针变量相对应的内存空间存储的值恰好是某个内存地址。这也是指针变量区别去其他变量的特征之一。例如某个指针的定义如下:

int x = 5;
int *ptr = &x;
登录后复制

ptr即是一个指正变量名。通过指针获取这个指针指向的内存中的值称为解引用。空指针是不能解引用的。

指针内存空间的表示如下:

C++ 引用和指针区别-LMLPHP

引用

引用(reference)在C++中也是经常被用到,尤其是在作为函数参数的时候,需要在函数内部修改更新函数外部的值的时候。首先我们必须明确的一点就是:引用是一种特殊的指针。

引用是一个指向其它对象的常量指针,它保存着所指对象的存储地址。并且使用的时候会自动解引用,而不需要像使用指针一样显式提领。

例如引用的定义如下:

int x = 5;
int &y = x;
登录后复制


推荐教程:《C#

以上就是C++ 引用和指针区别的详细内容,更多请关注Work网其它相关文章!

09-10 21:17