天天看點

VB (空字串)、Null、Empty、與 Nothing 的差別

VB (空字串)、Null、Empty、與 Nothing 的差別

http://blog.sina.com.cn/s/blog_3f39ffb50100bguw.html

變量 A、B、C、D 分别等于 0、""、Null、 Empty、 Nothing 的哪一個?

Dim A

Dim B As String

Dim C As Integer

Dim D As Object

A 等于 Empty, 因為尚未初始化的「不定型變量」都等于 Empty。但如果檢

測 A = "" 或 A = 0, 也都可以得到 True 值。

B 等于 "", 因為尚未初始化的非固定長度「字串」都等于 "" 。 但請注意

B<> Null。

C 等于 0, 這個還有問題嗎?

D 等于 Nothing, 尚未設定有物件的「物件變量」都等于 Nothing, 但請不

要使用 D = Nothing , 而要使用 D Is Nothing 來判斷 D 是否等于 Nothing,

因為判斷 是否相等的符号是 Is 不是 = 。

最令人迷惑的地方是 Null 這個保留字, 請看以下語句:

Print X = Null

Print X <> Null

結果都是輸出 Null(不是 True 也不是 False), 這是因為任何一個運算式隻

要含有 Null , 則該運算式就等于 Null, 實際上想要判斷某一資料是否為 Null

絕對不能使用:

If X = Null Then ' 永遠都會得到 Null

而要使用: