運(yùn)行該程序,單擊窗體,則窗體上打印出3行文字,如圖3.3所示。由于字符串變量Str2最多能存儲(chǔ)4個(gè)字符,因此,字符串"中華人民共和國(guó)"的后3個(gè)字符被截去。同理,Str3中只存儲(chǔ)了兩個(gè)字符,其他字符被截去。
2.隱式聲明
在VB中,也可以不事先聲明而直接使用變量,這種方式稱為隱式聲明。上述使用Dim語(yǔ)句聲明變量的方式稱為顯式聲明。所有隱式聲明的變量都是變體型數(shù)據(jù)類型。
在使用一個(gè)變量之前并不必先聲明這個(gè)變量。例如,不必在使用變量TempVal之前先聲明它:
Function safeSqr(num)
TempVal=Abs(num)
SsfeSqr=Sqr(TempVal)
End Function
VB用這個(gè)名字自動(dòng)創(chuàng)建一個(gè)變量,使用這個(gè)變量時(shí),可以認(rèn)為它就是顯式聲明的。雖然這種方法很方便,但是如果把變量名拼錯(cuò)了的話,系統(tǒng)會(huì)認(rèn)為它是另一個(gè)新的變量,從而會(huì)導(dǎo)致一個(gè)難以查找的錯(cuò)誤。
如果知道變量確實(shí)總是存儲(chǔ)特定類型的數(shù)據(jù),最好還是先聲明變量的數(shù)據(jù)類型,這樣VB會(huì)以更高的效率處理這個(gè)數(shù)據(jù)。例如,存儲(chǔ)人名的變量最好聲明成字符串?dāng)?shù)據(jù)類型,因?yàn)槊挚偸怯勺址M成的。
為了避免寫(xiě)錯(cuò)變量名引起的麻煩,可以在【代碼】窗口的聲明段中加入語(yǔ)句:
Option Explicit
這樣,在代碼中只要遇到一個(gè)未經(jīng)顯式聲明就當(dāng)成變量的名字,Visual Basic都會(huì)彈出錯(cuò)誤警告。
例如,編寫(xiě)一段代碼如圖3.4所示,其中聲明了變量s1,而沒(méi)有聲明變量s2,運(yùn)行該程序,單擊窗體,則彈出編譯錯(cuò)誤消息框,提示用戶變量未定義。如果刪除option Explicit語(yǔ)句,再次執(zhí)行程序,則不會(huì)再出現(xiàn)變量未定義的錯(cuò)誤。
也可以將系統(tǒng)定制為總要求顯式聲明變量。執(zhí)行【工具】菜單中的【選項(xiàng)】命令,打開(kāi)如圖3.5所示的【選項(xiàng)】對(duì)話框,在【編輯器】選項(xiàng)卡中選中【要求變量聲明】復(fù)選框。這樣就在任何新建的模塊中自動(dòng)插入如Option Explicit語(yǔ)句,但不會(huì)在已經(jīng)建立起來(lái)的模塊中自動(dòng)插入。所以在工程內(nèi)部,只能用手工方法向現(xiàn)有模塊添加Option Explicit語(yǔ)句。
注意:Option Explicit語(yǔ)句的作用范圈僅限于語(yǔ)句所在模塊,所以,對(duì)每個(gè)需要強(qiáng)制式變量聲明的窗體棋塊和標(biāo)準(zhǔn)摸塊,都必須將Option Explicit語(yǔ)句放在它們各自的聲明段中。
相關(guān)推薦:2010年9月計(jì)算機(jī)等級(jí)考試成績(jī)查詢時(shí)間匯總
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |