Ver Mensaje Individual
  #2 (permalink)  
Antiguo 09/09/2008, 00:07
Avatar de Fayca
Fayca
 
Fecha de Ingreso: abril-2008
Mensajes: 164
Antigüedad: 16 años, 1 mes
Puntos: 2
Respuesta: Vector Dinamico en C

Hola, mira este ejemplo:
Código:
#include <iostream>
int main()
{
    int *vector;
    int tamano;
    std::cout << "Introdusca el tamaño del vector:";
    std::cin >> tamano;
    vector = new int[tamano];
    return 0;
}
crea un vector con el tamaño del numero que le introduscas,
funciona asi;
creas un puntero, con new solisitas memora, new se encarga de regresar la direccion de memora en este caso la direccion la guarda en vector, un mal uso de la memoria dinamica puede ocasionar que te acabes los recursos de la maquina, tienes que eliminarla despues de haberla usado por que cuando salga de la funcion en la que creaste, el puntero ya no ba a existir por lo tanto ya no podras liberar la memoria y la memora se ba a quedar ahi
para liberarla en el ejemplo anterior seria:
delete []vector;
es muy importante el uso de los corchetes y que no contengan en su interior un indice de lo contrario no livera todo el vector solo borraria el indise al que este apuntando, sin corchetes solo borraria el indice 0 y no todo el vector por lo tanto se iria llenando la memora, para agrandarlo tienes que creear otro vector dinamico, compiarlo todo en ese, borrar el existente, bolberlo a generar con el numero de indises que quieras y bolber a vaciar los datos en ese

espero haberme explicado bin de lo contrario pregunta

Última edición por Fayca; 09/09/2008 a las 00:09 Razón: uso de comas para que se entienda mejor