2012-02-18 14 views
0

が、その後、ブールの値、すなわち偽になりません:VB6ブール - あなたは(私はブール値はリテラル持っているので、これは間違っている知っている:TRUEとFALSE)をVB.NETで何もブール値を設定した場合は何もリテラル

Public Sub Page_Load(ByVal o As Object, ByVal e As EventArgs) Handles Me.Load 

Dim boolTest As Boolean 
boolTest = Nothing 'boolTest becomes FALSE 

End Sub 

しかし、VB6ではコンパイル時エラー、つまりオブジェクトの無効な使用が発生します。どうしてこれなの?

答えて

2

これは、VB6ではNothingがオブジェクトであるためです。 VB.Netは、多くのものが何らかのオブジェクトであると考えているようですが、この場合はVB6の方がタイピングが強いです。

+0

+1。 VB6はオブジェクトと他の変数を区別します。 VB.Netはありません。 VB.Netでは、値の型をNothingに設定することもできます.Nothingは既定値にリセットされます。 Falseはブール値のデフォルト値です。 – MarkJ

関連する問題