|
剛開始學(xué)習(xí)C#的時(shí)候,就聽說CLR對(duì)于String類有一種特別的內(nèi)存管理機(jī)制:有時(shí)候,明明聲明了兩個(gè)String類的對(duì)象,但是他們偏偏卻指向同一個(gè)實(shí)例。如下:
String s1 = "Hello";
String s2 = "Hello";
//s2和s1的實(shí)際值都是Hello
bool same = (object) s1 == (object) s2;
//這里比較s1、s2是否引用了同一個(gè)對(duì)象實(shí)例
//所以不能寫作bool same = s1 == s2;
//因?yàn)镾tring類重載了==操作符來比較String對(duì)象包含的實(shí)際值
NET技術(shù):C#中字符串的內(nèi)存分配與駐留池,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。