指针的引用

lifei_flybird 2012-03-31 02:22:34
求助,指针的引用的概念是什么??
...全文
335 28 打赏 收藏 转发到动态 举报
写回复
用AI写文章
28 条回复
切换为时间正序
请发表友善的回复…
发表回复
翼飞 2012-04-11
  • 打赏
  • 举报
回复
主要作用就是在被调用函数内部,对传入的指针参数进行修改,用二级指针也可以
x363635334 2012-04-09
  • 打赏
  • 举报
回复
不能企图通过改变指针形参的值来改变指针实参的值: 不引用的话形参是栈上的另外指针
shenqi67 2012-04-09
  • 打赏
  • 举报
回复
引用就是别名,用法和它所引用的变量名是一样的,比如,int &a=b;定义了b的一个引用,则以后可以用b的地方
就可以用a。但是注意,引用本身不是一种数据类型,不能有引用的引用,也不能有引用的指针;但是可以有指针的引用,因为指针是一种数据类型。
screwzm 2012-04-09
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 的回复:]

不会指针的出门左转JAVA。
[/Quote]哈哈,幽默!
楼主,你把指针当成c++内置成员去理解就可以了!
引用作用于任何类型效果一致
一根烂笔头 2012-04-09
  • 打赏
  • 举报
回复
你首先明白什么是引用,那么指针引用也就迎刃而解了!

指针的引用是对变量的引用的“实例化”,相当于对象和类,特殊与一般,大众与个性的关系

所以你先搞明白引用吧!

概括而言,总而言之,言而总之:引用就是别名!

参数传递引用,省去临时副本,省去赋值,复制的麻烦!
无事所所 2012-04-09
  • 打赏
  • 举报
回复
[Quote=引用 20 楼 的回复:]

引用 16 楼 的回复:

引用 15 楼 的回复:

引用 7 楼 的回复:

引用 3 楼 的回复:



例如,在某个函数中需要更改传入的某个指针参数,使之指向其他的对象,那么这是后……
[/Quote]


当然不可以了.你只传入指针,然后把指针设为null,你自己写个程序检验一下函数返回之后呢个指针变成null没.
Spy 2012-04-06
  • 打赏
  • 举报
回复
指针也有存储空间的,引用就是取另外的名字
酱油党 2012-04-06
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 的回复:]

引用 15 楼 的回复:

引用 7 楼 的回复:

引用 3 楼 的回复:

我感觉 应该讨论指针的引用有什么用处更有意义,感觉跟直接使用指针没什么分别,有谁知道指针的引用跟指针在实际使用上有什么分别吗?


指针的引用当然有用,和普通变量的引用一个意思

例如,在某个函数中需要更改传入的某个指针参数,使之指向其他的对象,那么这是后可以考虑用指针的引用,当然本质上和……
[/Quote]
???指针传入就不能赋值成NULL了?谁告诉你的?
xz491839007 2012-04-06
  • 打赏
  • 举报
回复
指针的引用就是指针的另外一个名字,相当于重新开辟一个空间,和以前的指针变量一摸一样
muyi66 2012-04-04
  • 打赏
  • 举报
回复
对指针的引用就是通过一个新的名字表达的老指针。其本质是编译器编译过程中内部的一个指针,而其表现是能跨越定义域访问指针变量本身,其最终编译出的目标代码里......你会发现根本就没有定义新的指针,而是把别人的指针拿过来用了。
tianyun16 2012-04-04
  • 打赏
  • 举报
回复
其实就是内存一块地址。不过必须有变量。否则报错。
ANT2AUNTH 2012-04-04
  • 打赏
  • 举报
回复
可以理解为一个别名,不同的是他是传递地址,而且比指针更安全
无事所所 2012-04-04
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 的回复:]

引用 7 楼 的回复:

引用 3 楼 的回复:

我感觉 应该讨论指针的引用有什么用处更有意义,感觉跟直接使用指针没什么分别,有谁知道指针的引用跟指针在实际使用上有什么分别吗?


指针的引用当然有用,和普通变量的引用一个意思

例如,在某个函数中需要更改传入的某个指针参数,使之指向其他的对象,那么这是后可以考虑用指针的引用,当然本质上和指向指针的指针是一个意思,但是可以……
[/Quote]

直接传入指针只能改变这个指针指向的值.
试想我要改变这个指针,使之指向新的值,比如使这个指针指向NULL,试问不用指针引用如何实现
酱油党 2012-04-03
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]

引用 3 楼 的回复:

我感觉 应该讨论指针的引用有什么用处更有意义,感觉跟直接使用指针没什么分别,有谁知道指针的引用跟指针在实际使用上有什么分别吗?


指针的引用当然有用,和普通变量的引用一个意思

例如,在某个函数中需要更改传入的某个指针参数,使之指向其他的对象,那么这是后可以考虑用指针的引用,当然本质上和指向指针的指针是一个意思,但是可以使程序员思维方便一些.
[/Quote]直接传入指针不就行了,干嘛需要引用,其他变脸有用是因为其他变量不具有传入传出特性!
深圳大哥 2012-04-02
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 的回复:]

不会指针的出门左转JAVA。
[/Quote]


这多形象啊
qq120848369 2012-04-02
  • 打赏
  • 举报
回复
不会指针的出门左转JAVA。
lxmuyu 2012-04-02
  • 打赏
  • 举报
回复
指针的引用在函数传参数的时候比较有用~
在传参中是传值的,这样将在函数范围中产生一个临时的变量,变量的值与传入的指针变量的值相同,而函数中的这个临时变量的地址却与传入函数的指针地址不一样~
当要修改传入函数的这个指针的值时,可以选择二级指针,也可以使用指针引用。。。
无事所所 2012-04-02
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 的回复:]

不要去对指针做引用处理
int *p=NULL;
int *&q=p;
*q=NULL;
编译通过运行出错
[/Quote]

哥们,你这是自己的问题啊,既然q是p的引用,那怎么能对值为NULL的指针作解引用运算?

*q = NULL 肯定是错的,正如 *p = NULL 是错的一样
应该是q = NULL ,这样完全没问题
w378567402 2012-04-02
  • 打赏
  • 举报
回复
不要去对指针做引用处理
int *p=NULL;
int *&q=p;
*q=NULL;
编译通过运行出错
z小爆 2012-04-02
  • 打赏
  • 举报
回复
就记着作用相同名字不同价格。 它们共用同一个存储空间。
改变其中一个另外一个也改变。~
加载更多回复(8)

64,318

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧