Type.IsValueType Type.IsValueType Type.IsValueType Type.IsValueType Property

Definición

Obtiene un valor que indica si el objeto Type es un tipo de valor.Gets a value indicating whether the Type is a value type.

public:
 property bool IsValueType { bool get(); };
public bool IsValueType { get; }
member this.IsValueType : bool
Public ReadOnly Property IsValueType As Boolean

Valor de propiedad

Es true si Type es un tipo de valor; en caso contrario, es false.true if the Type is a value type; otherwise, false.

Implementaciones

Ejemplos

En el ejemplo siguiente se crea una variable MyEnumde tipo, se IsValueType comprueba la propiedad y se muestra el resultado.The following example creates a variable of type MyEnum, checks for the IsValueType property, and displays the result.

using namespace System;

// Declare an enum type.
public enum class NumEnum
{
   One, Two
};

int main()
{
    bool flag = false;
    NumEnum testEnum = NumEnum::One;
      
    // Get the type of myTestEnum.
    Type^ t = testEnum.GetType();
      
    // Get the IsValueType property of the myTestEnum
    // variable.
    flag = t->IsValueType;
    Console::WriteLine("{0} is a value type: {1}", t->FullName, flag);
}
using System;

// Declare an enum type.
enum NumEnum { One, Two }

public class Example
{

    public static void Main(string []args)
    {
        bool flag = false;
        NumEnum testEnum = NumEnum.One;
        // Get the type of myTestEnum.
        Type t = testEnum.GetType();
        // Get the IsValueType property of the myTestEnum variable.
        flag = t.IsValueType;
        Console.WriteLine("{0} is a value type: {1}", t.FullName, flag);
    }
}
// The example displays the following output:
//        NumEnum is a value type: True
' Declare an enum type.
Enum NumEnum
    One
    Two
End Enum
    
Public Class Example

    Public Shared Sub Main()
        Dim flag As Boolean = False
        Dim testEnum As NumEnum = NumEnum.One
        ' Get the type of myTestEnum.
        Dim t As Type = testEnum.GetType()
        ' Get the IsValueType property of the myTestEnum variable.
         flag = t.IsValueType()
         Console.WriteLine("{0} is a value type: {1}", t.FullName, flag)
     End Sub 
 End Class  
' The example displays the following output:
'       NumEnum is a value type: True

Comentarios

Los tipos de valor son tipos que se representan como secuencias de bits; los tipos de valor no son clases ni interfaces.Value types are types that are represented as sequences of bits; value types are not classes or interfaces. Los tipos de valor se conocen como "Structs" en algunos lenguajes de programación.Value types are referred to as "structs" in some programming languages. Las enumeraciones son un caso especial de tipos de valor.Enums are a special case of value types.

Esta propiedad devuelve false para la ValueType clase, porque ValueType no es un tipo de valor en sí.This property returns false for the ValueType class, because ValueType is not a value type itself. Es la clase base para todos los tipos de valor y, por lo tanto, se le puede asignar cualquier tipo de valor.It is the base class for all value types, and therefore any value type can be assigned to it. Esto no sería posible si ValueType se tratara de un tipo de valor.This would not be possible if ValueType itself was a value type. Se aplica la conversión boxing a los tipos de valor cuando se asignan a un campo de tipo ValueType.Value types are boxed when they are assigned to a field of type ValueType.

Esta propiedad devuelve true para enumeraciones, pero no para el Enum propio tipo.This property returns true for enumerations, but not for the Enum type itself. Para obtener un ejemplo que muestra este comportamiento, IsEnumvea.For an example that demonstrates this behavior, see IsEnum.

Esta propiedad es de sólo lectura.This property is read-only.

Se aplica a

Consulte también: