elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Que estoy haciendo mal arreglo? (Solucionado)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Que estoy haciendo mal arreglo? (Solucionado)  (Leído 6,729 veces)
nolasco281


Desconectado Desconectado

Mensajes: 319


Ver Perfil
Que estoy haciendo mal arreglo? (Solucionado)
« en: 4 Febrero 2014, 01:58 am »

Hola como estan.

Como pueden ver estoy declarando esas variables globales.
no se que estoy haciendo mal

perdon se me escapaba explicar esa variable las declaro como glovales en camion.h pero en el archivo de implemetacion a la hora se ser usadas me da ese error

si lo ejecuto en la principal no hay problema.



y en la funcion de camion.cpp tengo esto

Código
  1. void Camion::ingresarCamion()
  2. {
  3.   if (cantidadDeCamiones < Maximo)
  4.   {
  5.     //Código de las entradas por teclado que capturaran lista de camiones
  6.     cout << "Ingrese los datos del camion\n";
  7.     cout << "Ingrese el ID del camion: ";
  8.     cin  >> idCamion;
  9.  
  10.     cout << "Ingrese la Marca del Camion: ";
  11.     cin  >> marcaCamion;
  12.  
  13. listaDeCamiones[cantidadDeCamiones] = new Camion(idCamion, cilindrajeCamion,
  14.                                                      nPuertasCamion, anioCamion,
  15.                                                      precioCamion, marcaCamion,
  16.                                                      modeloCamion,colorCamion);
  17.     cantidadDeCamiones++;
  18.  
  19.     cout << "Los datos del camion fueron ingresados correctamente\n\n";
  20.   }
  21.   else
  22.   {
  23.       system("cls");
  24.       cout << "Ya no hay espacio disponible para mas camiones\n\n";
  25.   }

el invalid types <unknown type> me imagino que hace referencia a  listaDeCamiones[cantidadDeCamiones]



« Última modificación: 4 Febrero 2014, 04:19 am por nolasco281 » En línea

Lo que se puede imaginar... se puede programar.
x64core


Desconectado Desconectado

Mensajes: 1.908


Ver Perfil
Re: Que estoy haciendo mal arreglo?
« Respuesta #1 en: 4 Febrero 2014, 02:07 am »

¿Son esas sentencias escritas dentro de alguna funcion?


En línea

nolasco281


Desconectado Desconectado

Mensajes: 319


Ver Perfil
Re: Que estoy haciendo mal arreglo?
« Respuesta #2 en: 4 Febrero 2014, 02:11 am »

No son variables dentro del archivo de encabezado (.h) las cuales según yo pretendo llamar en camion.cpp ya que las declaro como globales
En línea

Lo que se puede imaginar... se puede programar.
nolasco281


Desconectado Desconectado

Mensajes: 319


Ver Perfil
Re: Que estoy haciendo mal arreglo?
« Respuesta #3 en: 4 Febrero 2014, 02:13 am »

¿Son esas sentencias escritas dentro de alguna funcion?

ya te entendi si exactamente.
En línea

Lo que se puede imaginar... se puede programar.
x64core


Desconectado Desconectado

Mensajes: 1.908


Ver Perfil
Re: Que estoy haciendo mal arreglo?
« Respuesta #4 en: 4 Febrero 2014, 02:20 am »

No son variables dentro del archivo de encabezado (.h) las cuales según yo pretendo llamar en camion.cpp ya que las declaro como globales
-
Publica el código.
« Última modificación: 4 Febrero 2014, 02:24 am por x64Core » En línea

nolasco281


Desconectado Desconectado

Mensajes: 319


Ver Perfil
Re: Que estoy haciendo mal arreglo?
« Respuesta #5 en: 4 Febrero 2014, 02:30 am »

si tienes razon ya ratos me di cuenta de que si lo hacia dentro de la funcion no da error
tienes toda la razon

pero al crear otra funcion que me muestre los datos del camion; que se guardaron en memoria como los saco para mostrarlos en otra funcion.

Código
  1. void Camion::ingresarCamion()
  2.    {
  3.       const int Maximo = 100;
  4.       Camion**listaDeCamiones = new Camion*[Maximo];// arreglo de 100
  5.       int cantidadDeCamiones=0;// controla la cantidad de camiones
  6.  
  7.      if (cantidadDeCamiones < Maximo)
  8.      {
  9.        //Código de las entradas por teclado que capturaran lista de camiones
  10.        cout << "Ingrese los datos del camion\n";
  11.        cout << "Ingrese el ID del camion: ";
  12.        cin  >> idCamion;
  13.  
  14.        cout << "Ingrese la Marca del Camion: ";
  15.        cin  >> marcaCamion;
  16.  
  17.    listaDeCamiones[cantidadDeCamiones] = new Camion(idCamion, cilindrajeCamion,
  18.                                                         nPuertasCamion, anioCamion,
  19.                                                         precioCamion, marcaCamion,
  20.                                                         modeloCamion,colorCamion);
  21.        cantidadDeCamiones++;
  22.  
  23.        cout << "Los datos del camion fueron ingresados correctamente\n\n";
  24.      }
  25.      else
  26.      {
  27.          system("cls");
  28.          cout << "Ya no hay espacio disponible para mas camiones\n\n";
  29.      }


ya que cantidadDeCamiones quedara en la otra funcion al igual que lista de camiones.

Código
  1. void Camion::listaDeCamiones()
  2. {
  3. if (cantidadDeCamiones==0)
  4.              {
  5.                system("cls");
  6.                cout<<"No se a registrado ninguna Camion todavía"<<endl;
  7.              }
  8.              else
  9.              {
  10.                  cout<<"..:::Lista de Camiones:::.."<<endl<<endl;
  11.                  cout<<setw(10)<<"idCamion"<<endl;
  12.                  cout<<"================================================="<<endl;
  13.  
  14.                  //Imprimmir todas los camiones almacenadas en el arreglo de camiones
  15.                  for (int i=0; i<cantidadDeCamiones;i++)
  16.                  {
  17.                      listaDeCamiones[i]->print();
  18.                  }
  19.                  cout<<endl<<"*******Fin de la lista **********"<<endl<<endl;
  20.              }
  21.  
  22. }

esas variables serian declaradas dentro de la funcion
« Última modificación: 4 Febrero 2014, 02:33 am por nolasco281 » En línea

Lo que se puede imaginar... se puede programar.
x64core


Desconectado Desconectado

Mensajes: 1.908


Ver Perfil
Re: Que estoy haciendo mal arreglo?
« Respuesta #6 en: 4 Febrero 2014, 02:44 am »

Declaralas globales y las inicializas/creas memoria dinamica en alguna funcion.
En línea

nolasco281


Desconectado Desconectado

Mensajes: 319


Ver Perfil
Re: Que estoy haciendo mal arreglo?
« Respuesta #7 en: 4 Febrero 2014, 02:48 am »

Declaralas globales y las inicializas/creas memoria dinamica en alguna funcion.

Me Disculpo no soy muy bueno pero las declaro en la de encabezado o en la de implementación? y cuales variables debo de inicializar y como. No pido código para nada solo una idea. Gracias de antemano.
En línea

Lo que se puede imaginar... se puede programar.
x64core


Desconectado Desconectado

Mensajes: 1.908


Ver Perfil
Re: Que estoy haciendo mal arreglo?
« Respuesta #8 en: 4 Febrero 2014, 02:55 am »

Me Disculpo no soy muy bueno pero las declaro en la de encabezado o en la de implementación? y cuales variables debo de inicializar y como. No pido código para nada solo una idea. Gracias de antemano.
Generalemente se definen en un .cpp/.c/... y se declaran con extern en un .h.
Declara las variables como globales las que necesites en multiples funciones luego sólo se usan en las funciones.
En línea

nolasco281


Desconectado Desconectado

Mensajes: 319


Ver Perfil
Re: Que estoy haciendo mal arreglo?
« Respuesta #9 en: 4 Febrero 2014, 03:04 am »

//entonce quedaria asi la camion.cpp

Código
  1. #include "Camion.h"
  2. #include <iostream>
  3. using namespace std;
  4.  
  5.     extern const int Maximo =100;
  6.     extern Camion**listaDeCamiones = new Camion*[Maximo];// arreglo de 100
  7.     extern int cantidadDeCamiones =0;// controla la cantidad de camiones

y en la .h
Código
  1. #ifndef CAMION_H
  2. #define CAMION_H
  3. #include <iostream>
  4. using namespace std;
  5.  
  6. int Maximo;
  7. Camion**listaDeCamiones = new Camion*[Maximo];
  8. int cantidadDeCamiones;
« Última modificación: 4 Febrero 2014, 03:22 am por nolasco281 » En línea

Lo que se puede imaginar... se puede programar.
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
¿ Que estoy haciendo mal ? « 1 2 »
Programación Visual Basic
Mr.Know 13 6,019 Último mensaje 15 Junio 2010, 12:16 pm
por Psyke1
[?]Perl ¿Qué estoy haciendo mal?
Scripting
Fritos 3 3,111 Último mensaje 15 Junio 2010, 19:32 pm
por xassiz_
[SEO google ]No se que estoy haciendo mal D=
Desarrollo Web
Kase 9 4,286 Último mensaje 31 Julio 2011, 14:53 pm
por reflol
[Solucionado]Como puedo mezclar un arreglo
Java
PabloPbl 4 7,296 Último mensaje 6 Febrero 2015, 22:47 pm
por PabloPbl
Hacer ícono con transparencia en W7 ¿qué estoy haciendo mal?
Windows
Tachikomaia 6 1,596 Último mensaje 15 Septiembre 2024, 12:50 pm
por Eleкtro
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines