最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
References and Aliases are Different Mechanisms (z
时间:2022-07-02 10:30:22 编辑:袖梨 来源:一聚教程网
References and Aliases are Different Mechanisms
Author: zkarakaya
Date 14/03/2001
Aliasing and Referencing are completely different mechanisms in PHP.
If you are Java or C++ programmer, you must be careful when using
Objects created on run-time.
What value be the output of this program code. Many programmer will
say "20", but this is not correct. Output is 10. Why? Because we have
created an instance of MyClass type on the right hand side of assignment
operator, and gave an initial value of 10. In the constructor of MyClass,
we have send the memory location of that newly created instance to another
Author: zkarakaya
Date 14/03/2001
Aliasing and Referencing are completely different mechanisms in PHP.
If you are Java or C++ programmer, you must be careful when using
Objects created on run-time.
Lets see an example;
class MyClass{
var $myData;
var $outManager;
cfunction MyClass($p){
$this->myData=$p;
$this->outManager = new MyOutManager($this);
}
cfunction display(){
$this->outManager->display();
}
}
class MyOutManager{
var $refObj;
cfunction MyOutManager(&$obj){
$this->refObj = &$obj;
}
cfunction display(){
echo $this->refObj->myData;
}
}
$myvar = new MyClass(10);
$myvar->myData = 20;
$myvar->display();
?>
What value be the output of this program code. Many programmer will
say "20", but this is not correct. Output is 10. Why? Because we have
created an instance of MyClass type on the right hand side of assignment
operator, and gave an initial value of 10. In the constructor of MyClass,
we have send the memory location of that newly created instance to another
相关文章
- taptap如何找回密码 07-23
- 魔兽世界指引线头任务指南 07-23
- 帝王·三国 双线1027区7月24日开服活动 07-23
- 火影忍者木叶高手大和怎么玩 火影忍者木叶高手大和技能效果详解 07-23
- 乱数王好玩吗 乱数王玩法简述 07-23
- 以极乐迪斯科怎么开局开局加点思路 探索迪斯科世界的最佳加点策略与技巧 07-23