C/C++何时使用引用和指针

 我来答
百度网友79d5913
2016-12-09 · TA获得超过2245个赞
知道大有可为答主
回答量:1325
采纳率:83%
帮助的人:278万
展开全部
这个问题不太容易严格区分,不过可以简单说一下。

指针:大家都知道,指向一个内存地址。但同时请注意一个东东,就是指针的步长(我叫它步长)其实就是指针的类型。C/C++中,类型转换对于指针来说同样适用,也就是可以改变步长。所以它比较特别,灵活性很大。更特别的一点是:它可以什么也不指向,就对着NULL/0。

引用:它的局限性要大很多,它只是一个对象的别名。这个别名的意思就是“它是依赖别的对象存在现而存在,它不会独立存在!”。所以请特别注意,引用必须指向一个已经存在的对象,不可以凭空存在。

明显的区别:
指针不依赖于对象的存在而存在,就是可以“凭空存在”;而引用不能“凭空存在”,必定指向一个对象。

一般来说,能用引用的地方,用指针也可以。但是指针太灵活(它可以指向NULL),然而如果此时提取指针对象就会出现“不明确行为”的严重错误。然而用引用就不会出现这样的错误,因为引用必须指向一个已经存在的对象,它不会为空。

想说也就是这么多了,希望你多多使用就能多多体会了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式