上一個隨筆說了一些關於vbs變量類型的內容,這一篇咱們繼續說說變量類型相關的內容。html
1、NULL補充內容編程
'須要注意的是,NULL不能簡單經過 = 來進行比較,而必須經過 'IsNull函數來實現 '下面用 = 進行比較,不會執行IF子句 Dim varTest varTest = Null If varTest = Null Then MsgBox "The variable varTest has NULL value." End If '下面用IsNull檢測,會執行語句 If IsNull(varTest) Then MsgBox "利用IsNull檢測,執行語句,varTest就是NULL" End If '********************************* ' 'Null 不能進行強制類型轉換 'MsgBox CLng(varTest) 'MsgBox CStr(varTest) 'null的隱式類型轉換 Dim lngTest lngTest = 2 + varTest '直接輸出lngTest產生未知數據錯誤 'MsgBox lngTest 'NULL隱式類型轉換爲控制符串"" MsgBox "數值與null進行加法運算,生成未知值,但NULL能夠和string鏈接" & lngTest
2、初識OOP編程語言
' vbs的OOP ' '一、vbs是一種面向對象的腳本編程語言 '二、oop的一些原理和思想在vbs中是通用的,這裏再也不多說 'set關鍵字,對對象變量進行賦值必須採用set關鍵字,不然出錯 'CreateObject函數,用來建立對象 'wsh對象 Dim objWSH Set objWSH = CreateObject("Wscript.Shell") MsgBox "當前工做路徑是: " & objWSH.CurrentDirectory '文件系統 Dim objFSO Set objFSO = WScript.CreateObject("Scripting.FileSystemObject") objFSO.CreateTextFile("D:\我是vbs生成的文件.txt") If objFSO.FileExists("D:\我是vbs生成的文件.txt") Then MsgBox "已經經過FSO系統生成文件" End If '對象類型具備必定的特殊性 '一、必須用Set關鍵字來初始化對象變量 '二、對象的類型必須經過Is函數來檢測,和NULL、Empty同樣 '三、有個特殊的對象常量,Nothing,這個表示對象變量不指向任何對象 '四、經過 set objXxx = Nothing 來取消objXxx與對象引用的關聯 If IsObject(objWSH) Then MsgBox "objWSH變量已經初始化,而且已經指向對象" End If '必須經過set 關鍵字來從新給對象賦值 If objWSH Is Nothing Then MsgBox "objWSH變量已經初始化,而且已經指向對象,這一句不執行" Else MsgBox "objWSH變量依然指向對象,不是Nothing,執行這一句" End If '檢測一個變量是否已經不指向任何對象,或者說檢測一個變量是不是一個對象 '的引用,那麼必須用 IS 操做符,不能經過簡單 = Nothing來檢測 Set objWSH = Nothing If objWSH Is Nothing Then MsgBox "objWSH變量已經設置爲Nothing,執行這一句" Else MsgBox "objWSH變量被設置成不指向任何對象,這一句不執行" End If
三、容錯機制函數
' vbs中的容錯機制 '一、在程序的執行過程當中不可避免的會出現某些錯誤,咱們有時候不能由於出現 ' 某些錯誤就中止程序的執行,這就須要提供一個機制來規避錯誤出現的風險 '二、vbs中有一種繼續執行機制,就是當錯誤存在的時候,繼續執行 '三、on error resume next 語句用來告訴腳本引擎,當出現異常的時候,繼續往 ' 下執行 On Error Resume Next '繞過錯誤繼續執行 Dim varNull varNull = Null '利用msgbox 顯示一個Null值,是一個錯誤,可是由於有 on error resume next '腳本將會繼續執行 MsgBox varNull varNull = "我已經賦值,不在是NULL,因此能夠正常顯示" MsgBox varNull '******************************************** ' 利用on error resume next 存在一個風險,就是若是邏輯不正確的話 ' 將會產生未知的後果,所以在編寫代碼的時候,最好要用防護式編程 ' 將產生未知狀況的可能性降到最低的可能性 ' 防護式編程實例 '假設輸入員工的年齡 Dim nAge Dim nInput nInput = InputBox("請輸入您的年齡","輸入","0") '由於輸入可能不是數值,因此就須要檢測 If IsNumeric(nInput) Then nAge = CInt(nInput) Else MsgBox "您輸入不是數值! 將設置爲22歲" nAge = 22 End If '由於人的年齡不能小於0,且正常狀況下不可能超過200歲,因此當出現 '不在 0 ~ 200 範圍的時候,將年齡設置爲22 If nAge < 0 Or nAge > 200 Then nAge = 22 End if MsgBox "您的年齡是: " & nAge
--------------------------------------------------------------分割線---------------------------------------------------------------oop
一、文章均爲我的原創,歡迎轉載,轉載請保留出處:https://www.cnblogs.com/volcanol/spa
二、獲取工控PLC、變頻器、HMI、計算機、Windows、Linux、嵌入式資料點擊:獲取資料
code
三、若是您以爲文章對您有幫助可轉至頁面上半部分打賞,或移步:打賞 htm
四、或者在頁面右下角點推薦喲!!!對象
--------------------------------------------------------------分割線------------------------------------------------------------blog