Nullable Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Поддерживает тип значения, который можно назначить null. Этот класс не наследуется.
public ref class Nullable abstract sealed
public static class Nullable
[System.Runtime.InteropServices.ComVisible(true)]
public static class Nullable
type Nullable = class
[<System.Runtime.InteropServices.ComVisible(true)>]
type Nullable = class
Public Class Nullable
- Наследование
-
Nullable
- Атрибуты
Комментарии
Класс поддерживает значения типов Nullable, которые могут быть присвоены null.
Тип называется nullable, если ему может быть присвоено значение или null, что означает отсутствие какого-либо значения у типа. По умолчанию все ссылочные типы, такие как String, допускают значение NULL, в то время как все типы значений, такие как Int32, не допускают его.
В C# и Visual Basic значения помечаются как nullable с помощью нотации после типа значения. Например, int? в C# или Integer? в Visual Basic объявляет целочисленный тип значения, который можно назначить null.
Класс Nullable обеспечивает дополнительную поддержку Nullable<T> структуры. Класс Nullable поддерживает получение базового типа типа, допускающего значение NULL, и операции сравнения и равенства пар типов, допускающих значение NULL, базовый тип которого не поддерживает универсальные операции сравнения и равенства.
Бокс и распаковка
Если допускающий значение NULL тип упаковывается, общая среда выполнения автоматически упаковывает базовое значение объекта Nullable<T>, а не сам объект Nullable<T>. То есть, если свойство HasValue равно true, содержимое свойства Value упаковывается.
Если свойство типа, допускающего значение NULL, равно HasValue, то результатом операции бокса является false. Если базовое значение типа, допускающего значение NULL, распаковано, среда CLR создает новую Nullable<T> структуру, инициализируемую базовым значением.
Методы
| Имя | Описание |
|---|---|
| Compare<T>(Nullable<T>, Nullable<T>) |
Сравнивает относительные значения двух Nullable<T> объектов. |
| Equals<T>(Nullable<T>, Nullable<T>) |
Указывает, равны ли два указанных Nullable<T> объекта. |
| GetUnderlyingType(Type) |
Возвращает аргумент базового типа указанного типа, допускающего значение NULL. |
| GetValueRefOrDefaultRef<T>(Nullable<T>) |
Извлекает ссылку на расположение в экземпляре Nullable<T> , где хранится значение. |