淺談PHP與C#的值類型指向區(qū)別的詳解
更新時間:2013年05月21日 14:29:45 作者:
本篇文章是對PHP與C#的值類型指向的區(qū)別進行了詳細的分析介紹,需要的朋友參考下
PH和C#的值拷貝區(qū)別(如果哪里說的不對,還望指出!)
$a = 2;
$b = $a; //在php中這里把b的地址指向a 所以b此時也等于2;區(qū)別就在這
$a = 5; //這時php中a的值又重新寫值,所以php核心這時才會把b重新分配一個地址,然后把a原先的值進行拷貝。這就是 寫時拷貝 原理 , 也就是說,除非進行寫操作,否則值類型就是指向一個地址。
而C#中。值類型的復制。永遠都是新建一個地址 如:
int a = 2;
int b = a; //此時不管有沒有進行a的二次寫入。.NET都會把給b分配一個新的內存空間(值存在??臻g的)。然后再把a的值拷貝一份
注意: C#中 值類型的值是直接存放棧中的。而引用類型,引用地址是存放在棧中,實際的值則存放在堆中。根據棧的地址,找堆中的值.
$a = 2;
$b = $a; //在php中這里把b的地址指向a 所以b此時也等于2;區(qū)別就在這
$a = 5; //這時php中a的值又重新寫值,所以php核心這時才會把b重新分配一個地址,然后把a原先的值進行拷貝。這就是 寫時拷貝 原理 , 也就是說,除非進行寫操作,否則值類型就是指向一個地址。
而C#中。值類型的復制。永遠都是新建一個地址 如:
int a = 2;
int b = a; //此時不管有沒有進行a的二次寫入。.NET都會把給b分配一個新的內存空間(值存在??臻g的)。然后再把a的值拷貝一份
注意: C#中 值類型的值是直接存放棧中的。而引用類型,引用地址是存放在棧中,實際的值則存放在堆中。根據棧的地址,找堆中的值.
相關文章
解決PHPstudy Apache無法啟動的問題【親測有效】
這篇文章主要介紹了PHPstudy Apache無法啟動的問題及解決方法【親測有效】,本文給大家總結了三種方法供大家參考,需要的朋友可以參考下2020-10-10destoon切換城市后實現logo旁邊顯示地區(qū)名稱的方法
這篇文章主要介紹了destoon切換城市后實現logo旁邊顯示地區(qū)名稱的方法,針對不同城市建設分站的時候很適用,需要的朋友可以參考下2014-08-08thinkphp5使用phpmail發(fā)送qq郵件的實現過程
這篇文章主要給大家介紹了thinkphp5使用phpmail發(fā)送qq郵件的實現過程,文中有詳細的代碼示例供大家參考,具有一定的參考價值,感興趣的小伙伴可以自己動手嘗試一下2023-10-10