Post on 16-Aug-2015
Reserva y Liberación de Memoria
Universidad Nacional Experimental
“Francisco de Miranda”
Aprendizaje Dialógico Interactivo
Unidad Curricular: Computación II.
Realizado por: Burgos José
Santa Ana de Coro; Abril del 2013
Reserva y liberación de memoria • Los operadores new y delete se utilizan para reservar y liberar
memoria dinámicamente. New y delete son parte del lenguaje C++ y
no parte de una librería como sucedía con las funciones
equivalentes malloc() y free() de C. Ahora los
operadores new y delete.
• El propósito de new es crear arrays cuyo tamaño pueda ser
determinado mientras el programa se ejecuta.
• delete funciona igual que free() en C. La memoria a la que apunta el
puntero es liberado, pero no el puntero en si.
Ejemplos #include <stdio.h>#include <stdlib.h> int *reserva_memoria(int num_element){ int *pt; pt = (int *) calloc (num_element, sizeof(int)); if (!pt){ printf(“Imposible reservar memoria.\n”); ...}return pt;}
Ejemplos void incrementarPorValor(int n){ n++; cout << n << endl; } void incrementarPorReferencia(int* n) { *n++ cout << *n << endl; } int main(void) { int n = 5; cout << n << endl; // imprime 5 incrementarPorValor(n); // imprime 6 cout << n << endl; // imprime 5 incrementarPorReferencia(&n); // imprime 6. cout << n << endl; // imprime 6 return 0;