欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

VB.NET局部靜態(tài)變量的示例分析

這篇文章將為大家詳細(xì)講解有關(guān)VB.NET局部靜態(tài)變量的示例分析,小編覺得挺實(shí)用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

成都創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括衛(wèi)輝網(wǎng)站建設(shè)、衛(wèi)輝網(wǎng)站制作、衛(wèi)輝網(wǎng)頁制作以及衛(wèi)輝網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,衛(wèi)輝網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到衛(wèi)輝省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

VB支持用Static關(guān)鍵字聲明局部變量,這樣在過程結(jié)束的時候可以保持變量的數(shù)值:

  1. Public Sub Test1() Static i
     As Integer i += 1 

  2. '實(shí)現(xiàn)一個過程調(diào)用計數(shù)器 End Sub 

我們實(shí)現(xiàn)了一個簡單的過程計數(shù)器。每調(diào)用一次Test,計數(shù)器的數(shù)值就增加1。其實(shí)還有很多情況我們希望保持變量的數(shù)值。而C#的static是不能用在過程內(nèi)部的。因此要實(shí)現(xiàn)過程計數(shù)器,我們必須聲明一個類級別的變量。這樣做明顯不如VB好。因?yàn)闊o法防止其他過程修改計數(shù)器變量。這就和對象封裝一個道理,本來應(yīng)該是一個方法的局部變量,現(xiàn)在我要被迫把它獨(dú)立出來,顯然是不好的設(shè)計。那么VB是怎么生成局部靜態(tài)變量的呢?將上述代碼返匯編,我們可以清楚地看到在VB生成的CIL中,i不是作為局部變量,而是作為類的Field出現(xiàn)的:

  1. .field private specialname 
    int32 $STATIC$Test1$2001$i 

也就是說,i被改名作為一個類的字段,但被冠以specialname。在代碼中試圖訪問$STATIC$Test1$2001$i是不可能的,因?yàn)樗皇且粋€有效的標(biāo)識符。但是在IL中,將這個變量加一的代碼卻與一般的類字段完全一樣,是通過ldfld加載的。我覺得這個方法十分聰明,把靜態(tài)變量變成生命周期一樣的類字段,但是又由編譯器來控制訪問的權(quán)限,讓它成為一個局部變量。同時也解釋了VB為什么要用兩個不同的關(guān)鍵字來聲明靜態(tài)變量—— Static和Shared。

由于VB.NET局部靜態(tài)變量的實(shí)質(zhì)是類的字段,所以它和真正的局部變量還是有所不同的。比如在多線程條件下,對VB.NET局部靜態(tài)變量的訪問就和訪問字段相同。

關(guān)于“VB.NET局部靜態(tài)變量的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

本文標(biāo)題:VB.NET局部靜態(tài)變量的示例分析
鏈接URL:http://chinadenli.net/article6/ihioog.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)虛擬主機(jī)企業(yè)網(wǎng)站制作響應(yīng)式網(wǎng)站微信小程序云服務(wù)器

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設(shè)計公司