Type.IsValueType Propriedade

Definição

Obtém um valor que indica se o Type é um tipo de valor.

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

Valor da propriedade

true se o Type for um tipo de valor; caso contrário, false.

Implementações

Exemplos

O exemplo a seguir cria uma variável do tipo MyEnum, verifica a IsValueType propriedade e exibe o resultado.

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 testEnum.
    Type^ t = testEnum.GetType();
      
    // Get the IsValueType property of the testEnum
    // 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 testEnum.
        Type t = testEnum.GetType();
        // Get the IsValueType property of the testEnum 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.
type NumEnum = One = 1 | Two = 2

let testEnum = NumEnum.One
// Get the type of testEnum.
let t = testEnum.GetType()
// Get the IsValueType property of the testEnum variable.
let flag = t.IsValueType
printfn $"{t.FullName} is a value type: {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

Comentários

Tipos de valor são tipos que são representados como sequências de bits; tipos de valor não são classes ou interfaces. Os tipos de valor são chamados de "structs" em algumas linguagens de programação. Enumerações são um caso especial de tipos de valor.

Essa propriedade retorna false para a ValueType classe , porque ValueType não é um tipo de valor em si. é a classe base para todos os tipos de valor e, portanto, qualquer tipo de valor pode ser atribuído a ele. Isso não seria possível se ValueType fosse um tipo de valor. Os tipos de valor são encaixoados quando são atribuídos a um campo do tipo ValueType.

Essa propriedade retorna true para enumerações, mas não para o Enum tipo em si. Para obter um exemplo que demonstre esse comportamento, consulte IsEnum.

Esta propriedade é somente para leitura.

Aplica-se a

Confira também