Lápices en lenguajes de programación como C + + servir como referencias a la memoria asignada dinámicamente en la memoria del sistema durante la ejecución del programa. Sin embargo , esta memoria puede ser olvidado durante los eventos del programa , causando una " pérdida de memoria ", donde la memoria asignada alcanza rápidamente la memoria del sistema . Debido a esto , debe administrar los punteros bien, y siempre eliminarlos. El tipo de datos " auto_ptr " ayuda a cuidar de esto para usted mediante la supresión de la memoria asignada cuando se elimina el objeto auto_ptr . Puede implementar fácilmente su propia sintaxis auto_ptr para manejar punteros como mejor le parezca . Cosas que necesitará
C + + Compiler
Ver Más instrucciones
1
crear una clase " auto_ptr " . El nombre de " SmartPointer ":
plantilla clase SmartPointer {
}
2
Incluya un tipo de datos de puntero en la clase : < br >
plantilla clase SmartPointer {
privada: T * inner_pointer ;}
3
Crear un constructor para la clase de puntero inteligente , que asigna una referencia al puntero :
plantilla clase SmartPointer {public
: SmartPointer (T de referencia) ;
privada: T * inner_pointer ;} ;
plantilla SmartPointer :: SmartPoint ( referencia T ) = { inner_pointer referencia; }
4 Crear un destructor de la clase , lo que eliminará el contenido del puntero de la memoria , al igual que el tipo " auto_ptr ":
plantilla clase SmartPointer {public
: SmartPointer ( referencia T); ~ SmartPointer ();
privada: T * inner_pointer ;} ;
plantilla SmartPointer :: SmartPoint (T referencia) { inner_pointer = referencia; }
plantilla SmartPointer :: ~ SmartPointer () { delete inner_pointer ;}