enable_shared_from_this Class
Ayuda generan 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();
};
Parámetros
- Ty
El tipo controla el puntero compartido.
Comentarios
La clase de plantilla se puede usar como clase base pública para simplificar crear objetos de shared_ptr Class los propios objetos de tipo derivado:
class derived
: public enable_shared_from_this<derived>
{
};
shared_ptr<derived> sp0(new derived);
shared_ptr<derived> sp1 = sp0->shared_from_this();
Proteger los constructores, destructor, y el operador de asignación para ayudar a evitar mal uso accidental.El tipo Ty de argumento de plantilla debe ser el tipo de la clase derivada.
Requisitos
encabezado: <memoria>
espacio de nombres: std