25

C# および vb での宣言時の変数のデフォルト値を誰か教えてもらえますか??

4

5 に答える 5

49

C# では、default キーワードを使用してデフォルト値を決定できます。

例えば:

デフォルト(ブール値)
デフォルト(整数)
デフォルト(int?)
于 2009-02-26T10:16:26.517 に答える
25

(メソッド)変数のことですか?またはフィールド(インスタンスまたはタイプ)?

メソッドレベルの変数 (少なくとも C# では) の場合、「明確な割り当て」とは、値を読み取る前に値を指定する必要があることを意味するため、無関係です。

フィールドはデフォルトでビット単位のゼロ状態になります。

  • null を意味する参照型 (文字列を含む) の場合
  • null を意味するfor Nullable<T>( int?etc)
  • 0 を意味する数値の場合
  • 0 値の列挙型が定義されていなくても0 を意味する列挙型の場合
  • false を意味するブール値の場合
  • DateTime の場合、MinValue と同じことを意味します
  • 他の構造体については、ドキュメントを確認する必要がありますが、(うまくいけば賢明な)「ゼロ/空」の値になります。
于 2009-02-26T10:50:49.537 に答える
5

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 です。

  • struct-type の場合、既定値は、すべての値型フィールドを既定値に設定し、すべての参照型フィールドを null に設定することによって生成される値です。

http://msdn.microsoft.com/en-us/library/aa691142(v=VS.71).aspx

文字列は値型ではありません。

于 2010-06-17T13:27:40.230 に答える
4

変数の型によって異なります。タイプが null になる可能性がある場合、そのデフォルト値は null になります。Null 許容型はすべて null で始まります。

  • 複合型 (String、StringBuilder) = null
  • 数値型 (int、decimal、double、byte) = 0
  • ブール値 = false
  • DateTime = DateTime.MinValue (01/01/0001 00:00:00)

以下を使用して初期値を設定できます。

文字列 s1 = "テスト";

Dim s1 As String = "test"

于 2009-02-26T10:46:34.650 に答える