Ағылшын тілінде оқу

Бөлісу құралы:


Type.IsValueType Свойство

Определение

Возвращает значение, позволяющее определить, является ли объект Type типом значения.

public bool IsValueType { get; }

Значение свойства

Значение true, если тип Type является типом значения; в противном случае — значение false.

Реализации

Примеры

В следующем примере создается переменная типа MyEnum, проверяется IsValueType свойство и отображается результат.

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

Комментарии

Типы значений — это типы, представленные в виде последовательностей битов; Типы значений не являются классами или интерфейсами. В некоторых языках программирования типы значений называются "структуры". Перечисления — это особый случай типов значений.

Это свойство возвращает значение false для ValueType класса , так как ValueType сам по себе не является типом значения. это базовый класс для всех типов значений, поэтому ему можно назначить любой тип значения. Это было бы невозможно, если ValueType бы сам был типом значения. Типы значений упаковываются, если они назначены полю типа ValueType.

Это свойство возвращает для true перечислений, но не для Enum самого типа. Пример, демонстрирующий такое поведение, см. в разделе IsEnum.

Это свойство доступно только для чтения.

Применяется к

Өнім Нұсқалар
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.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

См. также раздел