visual variable valor una tipos studio son significado los ejemplos dim declaracion cuƔles crear como asignar variables default declaration

variables - variable - dim as string significado



valor predeterminado de una variable en el momento de la declaraciĆ³n en C#y VB? (5)

¿Alguien puede decirme cuál es el valor predeterminado de una variable en el momento de la declaración en C # y vb?


¿Quieres decir una variable (método)? o un campo (en una instancia o tipo)?

Para una variable de nivel de método (al menos en C #) es irrelevante, ya que "asignación definida" significa que debe asignarle un valor antes de poder leerlo.

Los campos se predeterminan al estado cero a nivel de bits:

  • para tipos de referencia (incluyendo cadena) que significa nulo
  • para Nullable<T> ( int? etc) que significa nulo
  • para números que significa 0
  • para enumeraciones que significa 0, incluso si no hay una enumeración de valor 0 definida
  • para tontos que significa falso
  • para DateTime, eso significa lo mismo que MinValue
  • para otras estructuras, tendrá que verificar su documentación, pero será un valor "cero / vacío" (con suerte razonable)

Depende del tipo de la variable. Si el tipo puede ser nulo, entonces su valor predeterminado será nulo. Los tipos anulables empezarán todos nulos.

  • Tipos complejos (String, StringBuilder) = null
  • Tipos numéricos (int, decimal, doble, byte) = 0
  • Booleano = falso
  • DateTime = DateTime.MinValue (01/01/0001 00:00:00)

Puede establecer un valor inicial usando:

cadena s1 = "prueba";

Dim s1 As String = "test"


En c # puede usar la palabra clave predeterminada para determinar los valores predeterminados.

Por ejemplo:

default(bool) default(int) default(int?)


Esto se puede encontrar en MSDN:

Visual Basic .NET define los siguientes tipos primitivos:

Los tipos de valores integrales Byte (entero sin signo de 1 byte), Short (entero con signo de 2 bytes), Entero (entero con signo de 4 bytes) y Long (entero con signo de 8 bytes). Estos tipos se asignan a System.Byte, System.Int16, System.Int32 y System.Int64, respectivamente. El valor predeterminado de un tipo integral es equivalente al 0 literal.

Los tipos de valor de punto flotante Single (punto flotante de 4 bytes) y Double (punto flotante de 8 bytes). Estos tipos se asignan a System.Single y System.Double, respectivamente. El valor predeterminado de un tipo de punto flotante es equivalente al 0 literal.

El tipo decimal (valor decimal de 16 bytes), que se asigna a System.Decimal. El valor predeterminado de decimal es equivalente al 0D literal.

El tipo de valor booleano, que representa un valor de verdad, generalmente es el resultado de una operación relacional o lógica. El literal es de tipo System.Boolean. El valor predeterminado del tipo booleano es equivalente al falso literal.

El tipo de valor Fecha, que representa una fecha y / o una hora y se asigna a System.DateTime. El valor predeterminado del tipo de fecha es equivalente al literal # 01/01/0001 12:00:00 AM #.

El tipo de valor Char, que representa un único carácter Unicode y se asigna a System.Char. El valor predeterminado del tipo Char es equivalente a la expresión constante ChrW (0).

El tipo de referencia String, que representa una secuencia de caracteres Unicode y se asigna a System.String. El valor predeterminado del tipo String es una referencia nula.

http://msdn.microsoft.com/en-us/library/aa711900.aspx


La especificación del lenguaje C # establece que para los tipos de valor, el valor predeterminado es el mismo que el asignado por el constructor predeterminado y para los tipos de referencia es nulo:

Así que los valores del constructor por defecto de los tipos de valor son

Para todos los tipos simples, el valor predeterminado es el valor producido por un patrón de bits de todos los ceros:

  • Para sbyte, byte, short, ushort, int, uint, long y ulong, el valor predeterminado es 0.

  • Para char, el valor predeterminado es ''/ x0000''. Para float, el predeterminado
    el valor es 0.0f.

  • Para el doble, el valor predeterminado es 0.0d. Para decimal, el valor predeterminado es 0.0m. Para bool, el valor predeterminado es falso.

  • Para un enum-typeE, el valor predeterminado es 0.

  • Para un tipo de estructura, el valor predeterminado es el valor producido al configurar todos los campos de tipo de valor en su valor predeterminado y todos los campos de tipo de referencia en nulos.

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

La cadena no es un tipo de valor.