enable_shared_from_this Class
Les aides génèrent shared_ptr.
template<class Ty>
class enable_shared_from_this {
public:
shared_ptr<Ty> shared_from_this();
shared_ptr<const Ty> shared_from_this() const;
protected:
enable_shared_from_this();
enable_shared_from_this(const enable_shared_from_this&);
enable_shared_from_this& operator=(const enable_shared_from_this&);
~enable_shared_from_this();
};
Paramètres
- Ty
Le type contrôlé par le pointeur partagé.
Notes
La classe de modèle peut être utilisée comme classe de base publique pour simplifier la création shared_ptr Class objets que possédez des objets du type dérivé :
class derived
: public enable_shared_from_this<derived>
{
};
shared_ptr<derived> sp0(new derived);
shared_ptr<derived> sp1 = sp0->shared_from_this();
Les constructeurs, le destructeur, et l'opérateur d'assignation sont protégés pour empêcher toute utilisation accidentel.Le type Ty d'arguments template doit être le type de la classe dérivée.
Configuration requise
en-tête : <memory>
l'espace de noms : DST