Ler em inglês

Compartilhar via


Type.IsValueType Propriedade

Definição

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

public bool IsValueType { get; }

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 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

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

Produto Versões
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Confira também