永发信息网

C++为什么要用引用而不是指针

答案:3  悬赏:0  手机版
解决时间 2021-11-10 17:17
C++为什么要用引用而不是指针
最佳答案
引用与指针区别:引用只是取得数据,无权修改,句柄就是一种引用的方式;指针是直接指向内存的,可以修改数据的。

  引用访问一个变量是直接访问,而指针是间接访问。
  引用是一个变量的别名,本身不单独分配自己的内存空间,而指针有自己的内存空间。
  引用在开始的时候就绑定到了一个内存空间(开始必须赋初值),所以他只能是这个内存空间的名字,而不能改成其他的,当然可以改变这个内存空间的值.
  例如
  int i = 3,j = 4;
  int &x = i;//成为i的别名
  x = j;//不能否认x仍然引用i,并没有成为j的别名,只是修改了x和j共享的内存空间的值.
  这点与指针不同,指针在任何时刻都可以改变自己的指向。

  无法让引用与其指示物分离。
  和指针不同,一旦引用和对象绑定,它无法再被重新指向其他对象。引用本身不是一个对象(它没有标识;当试图获得引用的地址时,你将的到它的指示物的地址;记住:引用就是它的指示物 )。
  从某种意义上来说,引用类似 int* const p 这样的const指针(并非如 const int* p这样的指向常量的指针)。不管有多么类似,请不要混淆引用和指针;它们完全不同。
全部回答
简单的说:就是为了安全,为了简便。。因为c++将面临大型程序,必须把安全放在第一位,否则一旦程序庞大到一定程度,如果因某个指针错误而造成的整个程序崩溃,哪怕差错都可能需要几天甚至几周时间了。。c++语言就是c语言走向高级语言的升级版。
习惯问题……用const修饰,那么在你的函数体里就不可以对其进行更改,否则报错!这是为了使有些指针要想被其它函数调用,但又不希望由于失误被其它函数意外更改而设置的。如果你本意就是要做指针的更改,那当然就别加const了。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
长江观光5号游轮的基本情况是什么?
兰州支队兴盛科目三考试场地址在什么地方,想
满分审验兰州市公安局交通警察支队红古大队办
12款1.8途观漏电,换了新电瓶,也一两天就漏
2016年8月|日曲靖新闻777曲靖珠街大箐口村钓
2O18年个人工资所得税是怎么调2
献字开头的吉利的诗
如何练散打,我经常被别人欺负怎么练散打
My money has run out. 这句话中间为什么用ha
四点三一点六的差比它们的积少多少
我家小巴西龟手脚烂了指甲也掉了一个,涂了四
啊胶怎么吃法效果明显点
华硕温7系统怎么进dlos
书法作品中取横式是什么意思?
7.5砂浆抗压强度分别是15.7 11.0 13.5 ,为什
推荐资讯
伊平清斑真的好用吗
火车路线查询成都到北京特7
跪求答案:截至2013年1月份,宁波证监局公务
日高三丈从时间上是什么时辰
ÿ
美国男子黑人田径运动员名字3个字
英国伦敦大学学院附近的房子租金一个月大概多
有一首歌里面是.....................哥们儿
十宗罪前传的介绍
求高风险高回报的工作
3.2x减4乘2等于8检验 。
33元的辣椒,18斤,1斤多少元?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?