Platform::WeakReference, classe
Représente une référence faible à une instance d'une classe ref.
Syntaxe
class WeakReference
Paramètres
Membres
Constructeurs
Membre | Description |
---|---|
WeakReference ::WeakReference | Initialise une nouvelle instance de la classe WeakReference. |
Méthodes
Membre | Description |
---|---|
WeakReference ::Resolve | Retourne un handle vers la classe ref sous-jacente, ou nullptr si l'objet n'existe plus. |
Opérateurs
Membre | Description |
---|---|
WeakReference::operator= | Assigne une nouvelle valeur à l'objet WeakReference. |
WeakReference::operator BoolType | Implémente le modèle bool sécurisé. |
Notes
La classe WeakReference elle-même n'est pas une classe ref et par conséquent elle n'hérite pas de Platform::Object^ et ne peut pas être utilisée dans la signature d'une méthode publique.
WeakReference::operator=
Assigne une valeur à un WeakReference.
Syntaxe
WeakReference& operator=(decltype(__nullptr));
WeakReference& operator=(const WeakReference& otherArg);
WeakReference& operator=(WeakReference&& otherArg);
WeakReference& operator=(const volatile ::Platform::Object^ const otherArg);
Notes
La dernière surcharge de la liste ci-dessus vous permet d'assigner une classe ref à une variable WeakReference. Dans ce cas, la classe ref est bascast sur Platform ::Object^. Vous restaurez le type d’origine ultérieurement en le spécifiant comme argument du paramètre de type dans la fonction membre WeakReference ::Resolve<T> .
WeakReference::operator BoolType
Implémente le modèle booléen sécurisé pour la classe WeakReference. À ne pas appeler explicitement à partir de votre code.
Syntaxe
BoolType BoolType();
WeakReference::Resolve, méthode (espace de noms de plateforme)
Retourne un handle vers la classe ref d'origine ou nullptr
si l'objet n'existe plus.
Syntaxe
template<typename T>
T^ Resolve() const;
Paramètres
Valeur de propriété/valeur de retour
Handle vers la classe ref à laquelle l'objet WeakReference était associé précédemment ou nullptr.
Exemple
Bar^ bar = ref new Bar();
//use bar...
if (bar != nullptr)
{
WeakReference wr(bar);
Bar^ newReference = wr.Resolve<Bar>();
}
Notez que le paramètre de type est T au lieu de T^.
WeakReference::WeakReference, constructeur
Fournit différentes façons de construire un WeakReference.
Syntaxe
WeakReference();
WeakReference(decltype(__nullptr));
WeakReference(const WeakReference& otherArg);
WeakReference(WeakReference&& otherArg);
explicit WeakReference(const volatile ::Platform::Object^ const otherArg);
Exemple
MyClass^ mc = ref new MyClass();
WeakReference wr(mc);
MyClass^ copy2 = wr.Resolve<MyClass>();
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour