Ответ 1
В С# вы можете использовать ключевое слово по умолчанию для определения значений по умолчанию.
Например:
default(bool) default(int) default(int?)
Может ли кто-нибудь сказать мне, что является значением по умолчанию переменной во время объявления в С# и vb??
В С# вы можете использовать ключевое слово по умолчанию для определения значений по умолчанию.
Например:
default(bool) default(int) default(int?)
Вы имеете в виду переменную (метод)? или поле (на экземпляре или типе)?
Для переменной уровня метода (по крайней мере, на С#) это не имеет значения, так как "определенное присвоение" означает, что вы должны дать ему значение, прежде чем вы сможете его прочитать.
Поля по умолчанию для побитового нуля:
Nullable<T>
(int?
и т.д.), что означает nullЭто можно найти в MSDN:
Visual Basic.NET определяет следующие примитивные типы:
Интегрированные типы значений Byte (1-байтное целое без знака), Short (2-байтовое целое число со знаком), Integer (4-байтовое целое число со знаком) и Long (8-байтовое целое число со знаком). Эти типы сопоставляются с System.Byte, System.Int16, System.Int32 и System.Int64 соответственно. Значение по умолчанию для интегрального типа эквивалентно литералу 0.
Типы значений с плавающей запятой Single (4-байтная с плавающей запятой) и Double (8-байтная с плавающей запятой). Эти типы сопоставляются с System.Single и System.Double, соответственно. Значение по умолчанию для типа с плавающей запятой эквивалентно литералу 0.
Десятичный тип (16-разрядное десятичное значение), который сопоставляется с System.Decimal. Значение десятичного значения по умолчанию эквивалентно литералу 0D.
Тип логического значения, представляющий значение истины, обычно является результатом реляционной или логической операции. Литерал имеет тип System.Boolean. Значение по умолчанию для типа Boolean эквивалентно литералу False.
Тип значения даты, который представляет дату и/или время и сопоставляется с System.DateTime. Значение по умолчанию типа Date эквивалентно литералу # 01/01/0001 12:00:00 AM #.
Тип значения Char, который представляет один символ Unicode и сопоставляется с System.Char. Значение по умолчанию для типа Char эквивалентно константному выражению ChrW (0).
Тип ссылки String, который представляет последовательность символов Unicode и карты в System.String. Значение по умолчанию для типа String - это нулевая ссылка.
Спецификация языка С# заявляет, что для типов значений значение по умолчанию такое же, как значение, назначенное конструктором по умолчанию, и для ссылочных типов оно равно null: p >
Значения типов значений по умолчанию:
Для всех простых типов по умолчанию значение - это значение, полученное бит шаблон всех нулей:
Для sbyte, byte, short, ushort, int, uint, long и ulong, значение по умолчанию равно 0.
Для char значением по умолчанию является "\ x0000". Для float по умолчанию значение равно 0.0f.
Для double значение по умолчанию равно 0.0d. Для десятичного значения по умолчанию используется значение 0.0m. Для bool значение по умолчанию - false.
Для параметра enum-typeE значение по умолчанию равно 0.
Для структурного типа значением по умолчанию является значение, созданное установка всех полей типа значения в их значение по умолчанию и все поля ссылочного типа в null.
http://msdn.microsoft.com/en-us/library/aa691142(v=VS.71).aspx
Строка не является типом значения.
Зависит от типа переменной. Если тип может быть пустым, значение по умолчанию будет равно null. Nullable типы будут начинаться с нуля.
Вы можете установить начальное значение, используя:
строка s1 = "test";
Dim s1 As String = "test"