您好,登錄后才能下訂單哦!
這篇文章主要講解了“C#怎么加框和消框”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“C#怎么加框和消框”吧!
C#加框和消框
這一章的課程中,有時對象的方便性就象值類型一樣好用。
這就是C#加框和消框登上了舞臺的地方,加框和消框是C#類型系統(tǒng)的核心概念。通過允許一個值類型轉(zhuǎn)換成類型對象或從類型對象轉(zhuǎn)換成值類型,這種機制形成了值類型和引用類型之間的捆綁連接。任何東西終究是一個對象——但是,僅當需要它們是對象時。
1.加框轉(zhuǎn)換
給一個值加框指隱式地把任何值類型轉(zhuǎn)換成類型對象。當一個值類型被加框時,一個對象實例就被分配,且值類型的值被拷貝給新的對象??匆韵吕樱?/p>
int nFunny = 2000; object oFunny = nFunny;
第二行的賦值暗示調(diào)用一個加框操作。nFunny整型變量的值被拷貝給oFunny對象?,F(xiàn)在整型變量和對象變量都同時存在于棧中,但對象的值居留在堆中。那么,它暗示著什么呢?它們的值互相獨立——在它們之間沒有連接。(oFunny沒有引用nFunny的值。) 以下代碼說明了結(jié)果:
int nFunny = 2000; object oFunny = nFunny; oFunny = 2001; Console.WriteLine("{0} {1}", nFunny, oFunny);
當代碼改變oFunny的值時,nFunny的值并沒有改變。只要你腦袋中有這個copy動作,就能夠使用值類型的對象功能,發(fā)揮出你的巨大優(yōu)勢!
2.消框轉(zhuǎn)換
和加框相比,消框是顯式操作——必須告訴編譯器,你想從對象中抽取出哪一種值類型。當執(zhí)行消框操作時,C#檢測所請求的值類型實際上存儲在對象實例中。經(jīng)過成功的校驗,該值被消框。
這就是消框如何執(zhí)行:
int nFunny = 2000; object oFunny = nFunny; int nNotSoFunny = (int)oFunny;
感謝各位的閱讀,以上就是“C#怎么加框和消框”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對C#怎么加框和消框這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。