[C con Clase] Realloc en C++ con 'new' y 'delete'
Jorge Vega Sanchez
memmaker650 en gmail.com
Vie Nov 19 11:20:27 CET 2010
Tengo este código que algunos ya conocerán. Lo que quiero saber es si hay un realloc o posibilidad de reservar más memoria pero sin perder los datos que ya tengas guardado, lo cual no sucede en mi programa. A ver si alguno puede ayudarme, un saludo.
-----------------------------------------------------------------
#include <stdio.h>
#include <vector>
using namespace std;
int* metodo(int*);
int main()
{
int *array;
array = new int;
array[0]=69; <-- Escribo en el primer
array=metodo(array);
printf("Tercer valor del vector: %d \n", array[2]);
printf("Tercer valor del vector: %d \n", array[0]); <--- debería leerse 69 pero sale un 0
delete[] array;
return 0;
}
int* metodo(int* vector)
{
int N=6;
vector = new int[N]; <-- Aquí me gustaría un realloc que se hace en MALLOC
for(int i=1; i<N; i++)
{
vector[i]=i+5;
}
printf("Valores del vector: %d, %d, %d, %d y %d \n",vector[0],vector[1],vector[2],vector[3],vector[4]);
return vector;
}
-----------------------------------------------------------------
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20101119/5de1d6a9/attachment.html>
Más información sobre la lista de distribución Cconclase