Classe System::ObjectExt

ObjectExt class

Fournit des méthodes statiques qui reproduisent les méthodes C# Object appelées pour des types C++ non‑Object (chaînes, nombres, etc.). Il s’agit d’un type statique sans services d’instance. Vous ne devez jamais créer d’instances de ce type, quel que soit le moyen.

class ObjectExt : public System::ObjectType

Méthodes

MéthodeDescription
static ArrayInitializerCast(From …)Convertit les valeurs fondamentales des tableaux (ce que C# fait implicitement mais que C++ ne fait apparemment pas).
static Box(const T&)Encapsule les types valeur pour les convertir en Object. Implémentation pour les types enum.
static Box(const T&)Encapsule les types valeur pour les convertir en Object. Implémentation pour les types non‑enum.
static Box(const T&)Encapsule les types Nullable pour les convertir en Object.
static Box(const String&)Encapsule les valeurs de chaîne.
static BoxEnum(T)Encapsule les types enum pour être propagés en tant que Object.
static CastToIList(const SmartPtr<Object>&)
static Coalesce(T0, T1)Implémentation de la traduction de l’opérateur ‘??’ pour les types non nullable.
static Coalesce(System::Nullable<T0>, T1)Implémentation de la traduction de l’opérateur ‘??’ pour les types nullable.
static CoalesceAssign(T0&, T1)Implémentation de la traduction de l’opérateur ‘??=’.
static CoalesceInternal(RT1, F)Implémentation de la traduction de l’opérateur ‘??’ pour les types non nullables. Surcharge pour le cas où RT2 est convertible en RT1.
static Equals(const T&, const T2&)
static Equals(const T&, const T2&)Substitution des appels C# Object.Equals fonctionnant pour tout type en C++. Surcharge pour les types pointeur intelligent.
static Equals(T, const T2&)Substitution des appels C# Object.Equals fonctionnant pour tout type en C++. Surcharge pour les types de structure.
static Equals(const T&, const T2&)Substitution des appels C# Object.Equals fonctionnant pour tout type en C++. Surcharge pour les types scalaires.
static Equals(const char_t(&), String)Substitution des appels C# Object.Equals fonctionnant pour tout type en C++. Surcharge pour le littéral chaîne avec comparaison de chaînes.
static Equals(const float&, const float&)Émule la comparaison en virgule flottante de style C# où deux NaN sont considérés égaux même si, selon IEC 60559:1989, NaN n’est égal à aucune valeur, y compris NaN.
static Equals(const double&, const double&)Émule la comparaison en virgule flottante de style C# où deux NaN sont considérés égaux même si, selon IEC 60559:1989, NaN n’est égal à aucune valeur, y compris NaN.
static ExplicitCastToObject(const T&)
static ExplicitCastToObject(const T&)
static GetHashCode(const T&)Implémente les appels GetHashCode() ; fonctionne à la fois sur les sous‑classes de Object et sur des types non liés.
static Is(const T&)Implémente la traduction de l’opérateur ‘is’. Spécialisation pour les types pouvant être boxés (valeur) qui sont exactement cela.
static Is(const U&)Implémente la traduction de l’opérateur ‘is’. Spécialisation pour les types pointeur optimisés pour les classes ‘final’.
static Is(const U&)Implémente la traduction de l’opérateur ‘is’. Spécialisation pour les types pointeur.
static Is(const Object&)Implémente la traduction de l’opérateur ‘is’. Spécialisation pour les types valeur.
static Is(const Object&)Implémente la traduction de l’opérateur ‘is’. Spécialisation pour les types non convertibles.
static Is(const SmartPtr<U>&)Implémente la traduction de l’opérateur ‘is’. Spécialisation pour les types pointeur.
static Is(const ExceptionWrapper<U>&)Implémente la traduction de l’opérateur ‘is’. Spécialisation pour les types d’enveloppe d’exception.
static Is(const SmartPtr<Object>&)Implémente la traduction de l’opérateur ‘is’. Spécialisation pour les types nullable.
static Is(const SmartPtr<Object>&)Implémente la traduction de l’opérateur ‘is’. Spécialisation pour les types pouvant être boxés avec l’opérateur == défini.
static Is(const SmartPtr<Object>&)Implémente la traduction de l’opérateur ‘is’. Spécialisation pour les types pouvant être boxés sans == défini.
static Is(const SmartPtr<V>&)Implémente la traduction de l’opérateur ‘is’. Spécialisation des types valeur boxés vers des interfaces.
static Is(const SmartPtr<U>&)Implémente la traduction de l’opérateur ‘is’. Spécialisation pour les types enum.
static Is(const WeakPtr<U>&)Implémente la traduction de l’opérateur ‘is’. Spécialisation pour les types enum vs pointeurs faibles.
static Is(const Nullable<U>&)Implémente la traduction de l’opérateur ‘is’. Spécialisation pour le type Nullable.
static Is(const char16_t *)Implémente la traduction de l’opérateur ‘is’. Spécialisation pour le littéral chaîne.
static Is(int32_t)Implémente la traduction de l’opérateur ‘is’. Spécialisation pour le littéral entier.
static IsBoxedValue(const SmartPtr<Object>&)Vérifie si l’objet est une valeur boxée.
static ObjectToUnknown(SmartPtr<Object>)Convertit Object en type inconnu, en gérant à la fois les types pointeur intelligent et les situations de valeur boxée.
static ObjectToUnknown(SmartPtr<Object>)Convertit Object en type inconnu, en gérant à la fois les types pointeur intelligent et les situations de valeur boxée.
static ToString(const char_t *)Substitution de la méthode C# ToString pour fonctionner avec n’importe quel type C++.
static ToString(const Nullable<T>&)Substitution de la méthode C# ToString pour fonctionner avec n’importe quel type C++.
static ToString(const T&)Substitution de la méthode C# ToString pour fonctionner avec n’importe quel type C++.
static ToString(const T&)Substitution de la méthode C# ToString pour fonctionner avec n’importe quel type C++.
static ToString(T&)Substitution de la méthode C# ToString pour fonctionner avec n’importe quel type C++.
static ToString(T&)Substitution de la méthode C# ToString pour fonctionner avec n’importe quel type C++.
static ToString(T&&)Substitution de la méthode C# ToString pour fonctionner avec n’importe quel type C++.
static ToString(T&)Substitution de la méthode C# ToString pour fonctionner avec n’importe quel type C++.
static ToString(const T&)Substitution de la méthode C# ToString pour fonctionner avec n’importe quel type C++.
static ToString(T&&)Substitution de la méthode C# ToString pour fonctionner avec n’importe quel type C++.
static Unbox(const SmartPtr<Object>&)Déboîte les types valeur après conversion en Object. Implémentation pour les types enum.
static Unbox(const SmartPtr<Object>&)Déboîte les types valeur après conversion en Object. Implémentation pour les types non‑enum et non nullable.
static Unbox(const SmartPtr<Object>&)Déboîte les types valeur après conversion en Object. Implémentation pour les types non‑enum et non nullable.
static Unbox(E)Déboîte les types enum en entier.
static Unbox(E)Convertit les types enum.
static Unbox(const SmartPtr<Object>&)Déboîte les valeurs de chaîne.
static UnboxStringSafe(const SmartPtr<Object>&)Déboîte la chaîne à partir d’une valeur emballée.
static UnboxToNullable(const SmartPtr<Object>&, bool)Déboîte l’objet en type nullable.
static UnknownIsNull(T)Vérifie si l’objet de type inconnu est nullptr. Surcharge pour les types non scalaires.
static UnknownIsNull(T)Vérifie si l’objet de type inconnu est nullptr. Surcharge pour les types scalaires.
static UnknownToObject(T)Convertit le type inconnu en Object, en gérant à la fois les situations de type pointeur intelligent et de type valeur.
static UnknownToObject(const T&)Convertit le type inconnu en Object, en gérant à la fois les situations de type pointeur intelligent et de type valeur.

Voir aussi