Класс System::ObjectExt

ObjectExt class

Предоставляет статические методы, имитирующие методы C# Object, вызываемые для не-Object типов C++ (строки, числа и т.д.). Это статический тип без сервисов экземпляра. Вы никогда не должны создавать его экземпляры каким-либо способом.

class ObjectExt : public System::ObjectType

Методы

МетодОписание
static ArrayInitializerCast(From …)Преобразует фундаментальные значения массивов (что C# делает неявно, но C++ очевидно не делает).
static Box(const T&)Упаковывает типы-значения для преобразования в Object. Реализация для перечислений.
static Box(const T&)Упаковывает типы-значения для преобразования в Object. Реализация для не перечислений.
static Box(const T&)Упаковывает типы Nullable для преобразования в Object.
static Box(const String&)Упаковывает строковые значения.
static BoxEnum(T)Упаковывает типы перечислений для передачи как Object.
static CastToIList(const SmartPtr<Object>&)
static Coalesce(T0, T1)Реализация трансляции оператора ‘??’ для не-nullable типов.
static Coalesce(System::Nullable<T0>, T1)Реализация трансляции оператора ‘??’ для nullable типов.
static CoalesceAssign(T0&, T1)Реализация трансляции оператора ‘??=’.
static CoalesceInternal(RT1, F)Реализация трансляции оператора ‘??’ для не-nullable типов. Перегрузка для случая, когда RT2 преобразуем к RT1.
static Equals(const T&, const T2&)
static Equals(const T&, const T2&)Замена вызовов C# Object.Equals работающих для любого типа в C++. Перегрузка для типов умных указателей.
static Equals(T, const T2&)Замена вызовов C# Object.Equals работающих для любого типа в C++. Перегрузка для структурных типов.
static Equals(const T&, const T2&)Замена вызовов C# Object.Equals работающих для любого типа в C++. Перегрузка для скалярных типов.
static Equals(const char_t(&), String)Замена вызовов C# Object.Equals работающих для любого типа в C++. Перегрузка для строковых литералов со строковым сравнением.
static Equals(const float&, const float&)Эмулирует сравнение чисел с плавающей точкой в стиле C#, где два NaN считаются равными, хотя согласно IEC 60559:1989 NaN не равен ни одному значению, включая NaN.
static Equals(const double&, const double&)Эмулирует сравнение чисел с плавающей точкой в стиле C#, где два NaN считаются равными, хотя согласно IEC 60559:1989 NaN не равен ни одному значению, включая NaN.
static ExplicitCastToObject(const T&)
static ExplicitCastToObject(const T&)
static GetHashCode(const T&)Реализует вызовы GetHashCode(); работает как с подклассами Object, так и с несвязанными типами.
static Is(const T&)Реализует трансляцию оператора ‘is’. Специализация для упаковываемых (значимых) типов, что именно они есть.
static Is(const U&)Реализует трансляцию оператора ‘is’. Специализация для указательных типов, оптимизированных для классов ‘final’.
static Is(const U&)Реализует трансляцию оператора ‘is’. Специализация для указательных типов.
static Is(const Object&)Реализует трансляцию оператора ‘is’. Специализация для значимых типов.
static Is(const Object&)Реализует трансляцию оператора ‘is’. Специализация для непреобразуемых типов.
static Is(const SmartPtr<U>&)Реализует трансляцию оператора ‘is’. Специализация для указательных типов.
static Is(const ExceptionWrapper<U>&)Реализует трансляцию оператора ‘is’. Специализация для типов-обёрток исключений.
static Is(const SmartPtr<Object>&)Реализует перевод оператора ‘is’. Специализация для nullable типов.
static Is(const SmartPtr<Object>&)Реализует перевод оператора ‘is’. Специализация для boxable типов с определённым оператором ==.
static Is(const SmartPtr<Object>&)Реализует перевод оператора ‘is’. Специализация для boxable типов без определённого оператора ==.
static Is(const SmartPtr<V>&)Реализует перевод оператора ‘is’. Специализация value типов, упакованных в интерфейсы.
static Is(const SmartPtr<U>&)Реализует перевод оператора ‘is’. Специализация для enum типов.
static Is(const WeakPtr<U>&)Реализует перевод оператора ‘is’. Специализация для enum типов против weak указателей.
static Is(const Nullable<U>&)Реализует перевод оператора ‘is’. Специализация для типа Nullable.
static Is(const char16_t *)Реализует перевод оператора ‘is’. Специализация для строкового литерала.
static Is(int32_t)Реализует перевод оператора ‘is’. Специализация для целочисленного литерала.
static IsBoxedValue(const SmartPtr<Object>&)Проверяет, является ли объект упакованным значением.
static ObjectToUnknown(SmartPtr<Object>)Преобразует Object в неизвестный тип, обрабатывая как тип умного указателя, так и упакованное значение.
static ObjectToUnknown(SmartPtr<Object>)Преобразует Object в неизвестный тип, обрабатывая как тип умного указателя, так и упакованное значение.
static ToString(const char_t *)Замена метода C# ToString для работы с любым типом C++.
static ToString(const Nullable<T>&)Замена метода C# ToString для работы с любым типом C++.
static ToString(const T&)Замена метода C# ToString для работы с любым типом C++.
static ToString(const T&)Замена метода C# ToString для работы с любым типом C++.
static ToString(T&)Замена метода C# ToString для работы с любым типом C++.
static ToString(T&)Замена метода C# ToString для работы с любым типом C++.
static ToString(T&&)Замена метода C# ToString для работы с любым типом C++.
static ToString(T&)Замена метода C# ToString для работы с любым типом C++.
static ToString(const T&)Замена метода C# ToString для работы с любым типом C++.
static ToString(T&&)Замена метода C# ToString для работы с любым типом C++.
static Unbox(const SmartPtr<Object>&)Разупаковывает value типы после преобразования в Object. Реализация для enum типов.
static Unbox(const SmartPtr<Object>&)Разупаковывает value типы после преобразования в Object. Реализация для типов, не являющихся enum и не nullable.
static Unbox(const SmartPtr<Object>&)Разупаковывает value типы после преобразования в Object. Реализация для типов, не являющихся enum и не nullable.
static Unbox(E)Разупаковывает enum типы в целое число.
static Unbox(E)Преобразует enum типы.
static Unbox(const SmartPtr<Object>&)Разупаковывает строковые значения.
static UnboxStringSafe(const SmartPtr<Object>&)Разупаковывает строку из упакованного значения.
static UnboxToNullable(const SmartPtr<Object>&, bool)Разупаковывает объект в nullable тип.
static UnknownIsNull(T)Проверяет, является ли объект неизвестного типа nullptr. Перегрузка для не скалярных типов.
static UnknownIsNull(T)Проверяет, является ли объект неизвестного типа nullptr. Перегрузка для скалярных типов.
static UnknownToObject(T)Преобразует неизвестный тип в Object, обрабатывая как тип умного указателя, так и тип значения.
static UnknownToObject(const T&)Преобразует неизвестный тип в Object, обрабатывая как тип умного указателя, так и тип значения.

См. также