展会信息港展会大全

PHP与C#的值类型指向区别
来源:互联网   发布日期:2016-03-02 15:36:45   浏览:2478次  

导读: PH和C#的值拷贝区别(如果哪里说的不对,还望指出!) $a = 2; $b = $a; //在php中这里把b的地址指向a 所以b此时也等于2;区别就在这 $a = 5; //...

PH和C#的值拷贝区别(如果哪里说的不对,还望指出!)

$a = 2;

$b = $a; //在php中这里把b的地址指向a 所以b此时也等于2;区别就在这

$a = 5; //这时php中a的值又重新写值,所以php核心这时才会把b重新分配一个地址,然后把a原先的值进行拷贝。这就是 写时拷贝 原理 ,也就是说,除非进行写操作,否则值类型就是指向一个地址。

而C#中。值类型的复制。永远都是新建一个地址 如:

int a = 2;

int b = a; //此时不管有没有进行a的二次写入。.NET都会把给b分配一个新的内存空间(值存在栈空间的)。然后再把a的值拷贝一份

注意: C#中 值类型的值是直接存放栈中的。而引用类型,引用地址是存放在栈中,实际的值则存放在堆中。根据栈的地址,找堆中的值.

赞助本站

人工智能实验室

相关热词: 开发 编程 android

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港