为了账号安全,请及时绑定邮箱和手机立即绑定

请高手解答这样理解php的类和引用是否正确?

比如,对象Nb的内存地址是0x0001,有个变量$a = new Nb(); 那么$a的值是什么呢,就是内存地址0x0001,就指向这个Nb对象

$b = $a; 那么$b的值是什么呢,还是内存地址0x0001,也是指向Nb对象,那么把$a = null ,那么对$b也没有影响,$b还在使用Nb对象,那么,$a = null的时候,是不会调用析构函数的

那么,$c =& $a; $c的值是什么呢? 首先,&是引用传值,所以,$c的值是变量$a的内存地址,假如,$a的内存地址是0x0101,那么,$c的值就是0x0101,指向$a

假如Nb类里面有个eat方法,那么我们调用$c->eat();时,是怎样个过程呢,那就是,$c通过自己的值0x0101找到$a,$a通过自己的值0x0001找到Nb这个对象,然后,就调用了eat这个方法。

正在回答

2 回答

在PHP 中引用的意思是:不同的名字访问同一个变量内容。
与C语言中的指针是有差别的.C语言中的指针里面存储的是变量的内容,在内存中存放的地址。

http://www.cnblogs.com/xiaochaohuashengmi/archive/2011/09/10/2173092.html

0 回复 有任何疑惑可以回复我~

正确,但我不是高手。。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

请高手解答这样理解php的类和引用是否正确?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信