Tecnología

Inicio

Cómo crear auto_ptr Sintaxis

Punteros en lenguajes de programación como C ++ sirven como referencias a asignan dinámicamente la memoria en la memoria del sistema durante la ejecución del programa. Sin embargo, esta memoria puede ser olvidada durante los eventos en el programa, provocando una "pérdida de memoria", donde la memoria asignada supera rápidamente la memoria del sistema. Debido a esto, debe administrar sus 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. Se puede implementar fácilmente su propia sintaxis auto_ptr para manejar punteros como mejor le parezca.

Instrucciones

1 Crear una clase de "auto_ptr". El nombre de "SmartPointer":

template <class T>
SmartPointer clase {

}

2 Incluir un tipo de datos de puntero en la clase:

template <class T>
SmartPointer clase {

privado:
T * inner_pointer;
}

3 Crear un constructor de la clase puntero inteligente, que asigna una referencia al puntero:

template <class T>
SmartPointer clase {

público:
SmartPointer (referencia T);

privado:
T * inner_pointer;
};

template <class T>
SmartPointer :: Smart Point (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":

template <class T>
SmartPointer clase {

público:
SmartPointer (referencia T);
~ SmartPointer ();

privado:
T * inner_pointer;
};

template <class T>
SmartPointer :: Smart Point (referencia T) {
inner_pointer = referencia;
}

template <class T>
SmartPointer :: ~ SmartPointer () {
Eliminar inner_pointer;
}