Ver Mensaje Individual
  #3 (permalink)  
Antiguo 25/09/2014, 21:59
Avatar de vangodp
vangodp
 
Fecha de Ingreso: octubre-2013
Mensajes: 934
Antigüedad: 10 años, 7 meses
Puntos: 38
Respuesta: Problema con Vectores

Pero puedes probar un truco poco ortodoxo y no garantizo que funcione XDDDD
Código C++:
Ver original
  1. const int n = 1;
  2. int main(){
  3.    int v;
  4.    cout << "Ingrese el valor de las dimensiones del vector "<< endl;
  5.    cin >> v;
  6.    int vector[n + v]; //le estamos pasando un constante ¿no? aun que despues le sumamos una variable jajajXDDDD
  7. //...
  8.    return 0;
  9. }
El problema es que según el estándar C++ n no debe ser una variable sino una constante, por lo tanto no deberíamos pedir tal valor.
Cuando creamos la variable de forma "normal" trabajamos con la pila y es muy limitada.
Puedes probar la solución que te indico ecfisa que se trata de trabajar con el heap o tambien llamado free storage.
El heap es una parte de la memoria a la que puedes reservar grandes cantidades de la misma. El problema de trabajar con el heap es que no llamamos las variables por sus nombres como en el caso de la pila, sino que usamos punteros.
En la facultad se exige que trabajes con determinados programas y a menudo no son muy buenos dejandote con un mal sabor de boca.
Si estuvieras trabajando por tu cuenta te diría que aprendieras a usar los vectores lo antes que pueda, pero no te va a ser posible ya que debes aprender primero a usar tablas y matrices.
Con los vectores(STL) puedes variar el tamaño.
Es el compilador o el IDE que te esta arrojando esos errores según el estándar por que así cree que esta haciendo el correcto. Dev c++ se lo pasa eso por el forro o puede que use un estándar mas reciente... realmente desconozco la razón de ser así.
Codeblocks no tirar error ni avisos.

prueba la solucion de arriba pero te lo repito... es muy poco ortodoxo si te llega a funcionar jeje

Última edición por vangodp; 25/09/2014 a las 22:08