无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

C#中的堆棧,值類型與引用類型

2022-12-29 20:41 作者:龘龖龍__  | 我要投稿

內(nèi)存分配

內(nèi)存用來存儲正在執(zhí)行的程序,分為兩個區(qū)域

區(qū):占地小,方便找,讀取速度較快


區(qū):占地大,讀取速度較慢(比硬盤快)


?

值類型與引用類型

?

因為方法執(zhí)行于棧中,所以方法聲明的變量都在棧中(僅僅存在于局部變量中,與成員變量的聲明和存儲不同),但由于值類型直接存數(shù)據(jù),引用類型直接存引用(不管是局部變量還是成員變量都通用),所以兩者應(yīng)用方法會有差別

有以下是方法內(nèi)值類型與引用類型存儲方式不同的影響:

?


程序執(zhí)行上圖代碼時的結(jié)果如下

?

修改一下再問



修改了堆


程序執(zhí)行上圖代碼時的結(jié)果如下

?

修改了棧


?

<修改了棧>這張截圖中最后一行代碼后,因為修改后i01創(chuàng)建了一個新的”引用”(引用02),在堆中開辟了與i02沒有關(guān)系的新地方,所以i02的”引用”(引用01)和堆中的值將不會改變

?

按照上面的說法,同為引用類型的s01給s02賦值”a”后再把堆中的數(shù)據(jù)改成”b”,s02應(yīng)該也隨著堆中的修改變成”b”

?

可運行后發(fā)現(xiàn)上圖的結(jié)果卻沒有任何改變,就像圖1-7只改變了s01,因為s01=”b”實際上修改的是棧,創(chuàng)建了一個新引用,和new數(shù)組是一個原理

?

判斷代碼是修改堆還是修改棧的小技巧:看修改的變量右邊有沒有加中括號,加了就是修改堆,沒加就是修改棧


C#中的堆棧,值類型與引用類型的評論 (共 條)

分享到微博請遵守國家法律
柳林县| 日照市| 扎赉特旗| 岳阳市| 龙口市| 邮箱| 旬阳县| 峨眉山市| 六安市| 扬州市| 长阳| 龙州县| 海晏县| 胶州市| 德惠市| 会昌县| 临江市| 舒城县| 上林县| 班玛县| 多伦县| 嫩江县| 固始县| 剑阁县| 务川| 灵山县| 太仆寺旗| 盘锦市| 新蔡县| 永兴县| 吉木乃县| 龙游县| 佳木斯市| 土默特右旗| 广宁县| 遵化市| 仁布县| 子洲县| 库车县| 分宜县| 白银市|