[VB.NET] Nothingの代入は暗黙的な初期化と同じ
.NET開発を始めるVB6プログラマーが知るべき9のこと
VBはもう最近ではやっていないのだが、なかなか興味深い。昔から言われてきたことが、今でもまだ言われ続けていることがVB6の呪縛の強さを表していると思う。
Nothingの扱いが面白い。初期値が代入されるらしい。
調べたら初期値とは以下のことらしい。
すべての数値型 (Byte および SByte を含む): 0
Char: バイナリの 0
すべての参照型 (Object、String、およびすべての配列を含む): Nothing
Boolean: False
Date: 西暦 1 年 1 月 1 日の午前 12:00 (01/01/0001 12:00:00 AM)
例えば参照型の文字型は、空ではなくNothingになる。
まぁ、いずれにせよ暗黙的な代入になるので、使用しないに越したことはないということだ。
VBはもう最近ではやっていないのだが、なかなか興味深い。昔から言われてきたことが、今でもまだ言われ続けていることがVB6の呪縛の強さを表していると思う。
Nothingの扱いが面白い。初期値が代入されるらしい。
調べたら初期値とは以下のことらしい。
すべての数値型 (Byte および SByte を含む): 0
Char: バイナリの 0
すべての参照型 (Object、String、およびすべての配列を含む): Nothing
Boolean: False
Date: 西暦 1 年 1 月 1 日の午前 12:00 (01/01/0001 12:00:00 AM)
例えば参照型の文字型は、空ではなくNothingになる。
Dim s As String = "" Console.WriteLine(s) ' ここでは空文字 s = Nothing Console.WriteLine(s) ' Nothingになる
まぁ、いずれにせよ暗黙的な代入になるので、使用しないに越したことはないということだ。