C#とvbでの宣言時の変数のデフォルト値は何か教えてもらえますか?
C#では、defaultキーワードを使用してデフォルト値を決定できます。
例えば:
default(bool) default(int) default(int?)
(メソッド)変数ですか?またはフィールド(インスタンスまたはタイプ)?
メソッドレベルの変数(少なくともC#の場合)は関係ありません。「明確な割り当て」は、mustが値を指定してから、それを読んで。
フィールドのデフォルトはビット単位のゼロ状態です。
Nullable<T>
(int?
など)これはnullを意味しますこれはMSDNにあります:
Visual Basic .NETは、次のプリミティブ型を定義します。
整数値のタイプは、バイト(1バイトの符号なし整数)、ショート(2バイトの符号付き整数)、整数(4バイトの符号付き整数)、およびロング(8バイトの符号付き整数)です。これらの型は、それぞれSystem.Byte、System.Int16、System.Int32、およびSystem.Int64にマップされます。 整数型のデフォルト値は、リテラル0と同等です
浮動小数点値のタイプは、Single(4バイト浮動小数点)およびDouble(8バイト浮動小数点)です。これらの型は、それぞれSystem.SingleおよびSystem.Doubleにマップされます。 浮動小数点型のデフォルト値はリテラル0と同等です
System.DecimalにマップするDecimalタイプ(16バイトの10進値)。 10進数のデフォルト値は、リテラル0Dと同等です。
真理値を表すブール値タイプ。通常は、関係演算または論理演算の結果です。リテラルのタイプはSystem.Booleanです。 ブール型のデフォルト値は、リテラルFalseと同等です
日付や時刻を表し、System.DateTimeにマップする日付値タイプ。 日付タイプのデフォルト値は、リテラル#01/01/0001 12:00:00 AM#。と同等です。
単一のUnicode文字を表し、System.CharにマップされるChar値タイプ。 Char型のデフォルト値は、定数式ChrW(0)と同等です。
Unicode文字のシーケンスを表し、System.StringにマップされるString参照型。 String型のデフォルト値はnull参照です
C#言語仕様では、値タイプのデフォルト値は、デフォルトコンストラクターによって割り当てられた値と同じであり、参照タイプnullです:
したがって、値タイプのデフォルトのコンストラクタ値は次のとおりです。
すべての単純型の場合、デフォルト値はすべてゼロのビットパターンによって生成される値です。
Sbyte、byte、short、ushort、int、uint、long、およびulongのデフォルト値は0です。
Charの場合、デフォルト値は '\ x0000'です。 floatの場合、デフォルト
値は0.0fです。Doubleの場合、デフォルト値は0.0dです。 10進数の場合、デフォルト値は0.0mです。 boolの場合、デフォルト値はfalseです。
Enum-typeEの場合、デフォルト値は0です。
構造体型の場合、デフォルト値は、すべての値タイプフィールドをデフォルト値に設定し、すべての参照タイプフィールドをnullに設定することによって生成される値です。
http://msdn.Microsoft.com/en-us/library/aa691142(v = VS.71).aspx
文字列は値のタイプではありません。
変数のタイプによって異なります。タイプがnullになる可能性がある場合、そのデフォルト値はnullになります。 null許容型はすべてnullから始まります。
以下を使用して初期値を設定できます。
文字列s1 = "テスト";
Dim s1 As String = "test"