## Nullable class


Предварительное объявление.

```cpp
template<typename T>class Nullable
```


| Параметр | Описание |
| --- | --- |
| T | Базовый тип значения, который расширяется классом [Nullable](./) |
## Методы

| Метод | Описание |
| --- | --- |
| [Equals](./equals/)(const T1\&) const | Определяет, равно ли значение, представленное текущим объектом, значению, представленному указанным объектом [Nullable](./). |
| [get_HasValue](./get_hasvalue/)() const | Определяет, представляет ли текущий объект какое-либо значение. |
| [get_Value](./get_value/)() const | Возвращает копию значения, представленного текущим объектом. |
| [GetHashCode](./gethashcode/)() const | Возвращает хеш‑код для текущего объекта. |
| [GetValueOrDefault](./getvalueordefault/)(T) | Возвращает значение, представляемое текущим объектом, или указанное значение, если значение, представляемое текущим объектом, равно null. |
| [GetValueOrDefault](./getvalueordefault/)() |  |
| [IsNull](./isnull/)() const | Определяет, представляет ли текущий объект значение null. |
| [Nullable](./nullable/)() | Создаёт экземпляр, представляющий значение null. |
| [Nullable](./nullable/)(std::nullptr_t) | Создаёт экземпляр, представляющий null. |
| [Nullable](./nullable/)(const T1\&) | Создаёт экземпляр класса [Nullable](./), представляющий указанное значение, преобразованное (при необходимости) к типу базового значения T. |
| [Nullable](./nullable/)(const Nullable\<T1\>\&) | Создаёт экземпляр, представляющий значение, которое представлено указанным объектом [Nullable](./). Указанный nullable‑объект может представлять значение другого типа, чем базовый тип создаваемого экземпляра; в этом случае представленное значение преобразуется к типу T. |
| [NullableBoolHelper](./nullableboolhelper/)(const T1\&, const std::function\<bool()>\&, bool) const | Вспомогательная функция для проверки, что this и **other** оба не null и вызова лямбда‑выражения, если это так. Используется в реализации. |
| [operator const T &](./operatorconstt&/)() const | Возвращает константную ссылку на значение, представляемое текущим объектом. |
| [operator!=](./operator!=/)(std::nullptr_t) const | Определяет, не является ли значение, представленное текущим объектом, null. |
| [operator!=](./operator!=/)(const T1\&) const | Определяет, не равно ли значение, представленное текущим объектом, указанному значению. |
| [operator!=](./operator!=/)(const Nullable\<T1\>\&) const | Определяет, не равно ли значение, представленное текущим объектом, значению, представленному указанным объектом [Nullable](./). |
| [operator&=](./operator&=/)(bool) | Применяет [operator&=()](./operator&=/) к значению, представленному текущим объектом, используя указанное значение в качестве правого аргумента. |
| [operator+](./operator+/)(std::nullptr_t) const | Возвращает экземпляр класса Nullable<T>, созданный по умолчанию. |
| [operator+](./operator+/)(const T1\&) const | Складывает nullable и non-nullable значения. |
| [operator+](./operator+/)(const Nullable\<T1\>\&) const | Складывает nullable значения. |
| [operator+=](./operator+=/)(std::nullptr_t) | Сбрасывает текущий объект, чтобы он представлял значение null. |
| [operator+=](./operator+=/)(const T1\&) | Применяет [operator+=()](./operator+=/) к значению, представленному текущим объектом, используя указанное значение в качестве правого аргумента. |
| [operator+=](./operator+=/)(const Nullable\<T1\>\&) | Применяет [operator+=()](./operator+=/) к значению, представленному текущим объектом, используя значение, представленное указанным объектом [Nullable](./), в качестве правого аргумента. |
| [operator-](./operator-/)(T1) const | Вычитает nullable и значения, указывающие на null. |
| [operator-](./operator-/)(const T1\&) const | Вычитает nullable и non-nullable значения. |
| [operator-](./operator-/)(const Nullable\<T1\>\&) const | Вычитает nullable значения. |
| [operator-=](./operator-=/)(T1) | Возвращает экземпляр класса [Nullable](./), представляющего нулевое значение. |
| [operator-=](./operator-=/)(const T1\&) | Применяет [operator-=()](./operator-=/) к значению, представленному текущим объектом, используя указанное значение в качестве правого аргумента. |
| [operator-=](./operator-=/)(const Nullable\<T1\>\&) | Применяет [operator-=()](./operator-=/) к значению, представленному текущим объектом, используя значение, представленное указанным объектом [Nullable](./), в качестве правого аргумента. |
| [operator<](./operator_/)(std::nullptr_t) const | Всегда возвращает false. |
| [operator<](./operator_/)(const T1\&) const | Определяет, меньше ли значение, представленное текущим объектом, указанного значения, применяя [operator<()](./operator_/) к этим значениям. |
| [operator<](./operator_/)(const Nullable\<T1\>\&) const | Определяет, меньше ли значение, представленное текущим объектом, значение, представленное указанным объектом [Nullable](./), применяя [operator<()](./operator_/) к этим значениям. |
| [operator<=](./operator_=/)(std::nullptr_t) const | Всегда возвращает false. |
| [operator<=](./operator_=/)(const T1\&) const | Определяет, меньше ли или равно значение, представленное текущим объектом, указанному значению, применяя [operator<=()](./operator_=/) к этим значениям. |
| [operator<=](./operator_=/)(const Nullable\<T1\>\&) const | Определяет, меньше ли или равно значение, представленное текущим объектом, значению, представленному указанным объектом [Nullable](./), применяя [operator<=()](./operator_=/) к этим значениям. |
| [operator=](./operator=/)(std::nullptr_t) | Назначает null текущему объекту. |
| [operator=](./operator=/)(const T1\&) | Заменяет текущее значение объекта указанным. |
| [operator=](./operator=/)(const Nullable\<T1\>\&) | Заменяет текущее значение объекта указанным. |
| [operator==](./operator==/)(std::nullptr_t) const | Определяет, является ли значение, представленное текущим объектом, null. |
| [operator==](./operator==/)(const T1\&) const | Определяет, равно ли значение, представленное текущим объектом, указанному значению. |
| [operator==](./operator==/)(const Nullable\<T1\>\&) const | Определяет, равно ли значение, представленное текущим объектом, значению, представленному указанным объектом [Nullable](./). |
| [operator>](./operator_/)(std::nullptr_t) const | Всегда возвращает false. |
| [operator>](./operator_/)(const T1\&) const | Определяет, больше ли значение, представленное текущим объектом, указанного значения, применяя [operator>()](./operator_/) к этим значениям. |
| [operator>](./operator_/)(const Nullable\<T1\>\&) const | Определяет, больше ли значение, представленное текущим объектом, значение, представленное указанным объектом [Nullable](./), применяя [operator>()](./operator_/) к этим значениям. |
| [operator>=](./operator_=/)(std::nullptr_t) const | Всегда возвращает false. |
| [operator>=](./operator_=/)(const T1\&) const | Определяет, больше ли или равно значение, представленное текущим объектом, значению, представленному указанным объектом, применяя [operator>=()](./operator_=/) к этим значениям. |
| [operator>=](./operator_=/)(const Nullable\<T1\>\&) const | Определяет, больше ли или равно значение, представленное текущим объектом, значение, представленное указанным объектом [Nullable](./), применяя [operator>=()](./operator_=/) к этим значениям. |
| [operator | =](./operator_=/)(bool) | Применяет [operator | =()](./operator_=/) к значению, представленному текущим объектом, используя указанное значение в качестве правого аргумента. |
| [reset](./reset/)() | Устанавливает текущее представленное значение в null. |
| [set_Value](./set_value/)(const T\&) | Устанавливает новое значение nullable-объекту. |
| [ToString](./tostring/)() const | Преобразует значение, представленное текущим объектом, в строку. |
## Typedefs

| Типовое определение | Описание |
| --- | --- |
| [ValueType](./valuetype/) | Псевдоним типа значения, представленного этим классом. |
## Примечания


Представляет значение указанного типа, которому можно присвоить null. Этот тип должен быть выделен в стеке и передаваться в функции по значению или по ссылке. Никогда не используйте класс [System::SmartPtr](../smartptr/) для управления объектами этого типа.

## См. также

* Namespace [System](../)
* Library [Aspose.PDF for C++](../../)
