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

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


  Mostrar Mensajes
Páginas: 1 ... 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 [28] 29 30 31 32
271  Programación / Programación C/C++ / Re: Tamaño consola y caracter inmovil (solucionado) en: 9 Febrero 2014, 06:55 am
Si vi ejemplos del goto pero te soy sincero no me gusta usarlo.

hace poco encontre una que es setxy();

dejo un ejemplo.

Código
  1. #include <constream>
  2. #include <conio.h>
  3.  
  4. using namespace conio;
  5. using namespace std;
  6.  
  7. int main() {
  8.  
  9.    cout << setxy(15,15) << "Y DAR COORDENADAS A EN LA PANTALLA";
  10.    cout << setxy(10, 10) << "POR FIN!!!";
  11.    cout <<setxy(13,13) << "Hola a todos";
  12.    cout <<setxy(20,20) << ":)";
  13.  
  14.    system("pause");
  15.    return 0;
  16. }

y gracias por lo de la pantalla ahorita la pruebo.
272  Programación / Programación C/C++ / Tamaño consola y caracter inmovil (solucionado) en: 9 Febrero 2014, 05:07 am
1. Tengo dos preguntas se puede cambiar el tamaño de la consola para que se vea el tamaño que deseo en tiempo de ejecución o ya está predefino por Windows.

Sé que puedo dar click derecho propiedades y pueda cambiar eso, pero el usuario también lo vera. No tengo otra compu para probar así que agradecería si alguien sabe algo.

2. y la segunda como hago para que una que un carácter  quede inmóvil o no se mueva de ese lugar sin correr los espacios en consola.
273  Programación / Programación C/C++ / Re: El for no me hace su funcion? (Solucionado) en: 7 Febrero 2014, 02:36 am
Aclarado cuando termine el programa lo comparto para quien le sirva.  Y si es un poco confuso pero hai voy saludos y gracias a todos.
274  Programación / Programación C/C++ / Re: Ayuda con error LINKER WARNING en: 6 Febrero 2014, 07:36 am
primero que nada creaste un proyecto donde a donde exportastes tus archivos o segundo asegurate que llames a las clase en el lugar donde las nesecitas saludos.

Código
  1. #include <dos.h>

segun lei por ahi esto ya esta opsoleto


y si no aca puedes encontrar una mejor declaracion tema y de por que te puede suceder ese error saludos.

http://foro.elhacker.net/programacion_cc/problema_dev_c_linker_error_undefined_reference_to-t279347.0.html
275  Programación / Programación C/C++ / Re: El for no me hace su funcion? en: 5 Febrero 2014, 18:00 pm
Entendí la mayoría de las cosas que me dijiste, ya lo he leído como 30,35 veces

Y la funcion listaDeCamiones::ingresarCamion() ya la probe y esta bien ya no tengo problema.

Código
  1. Camion* nuevoCamion = new Camion( );
  2.            nuevoCamion->setId(idCam);
  3.            nuevoCamion->setCilindraje(cilindrajeCam);
  4.            nuevoCamion->setNPuertas(nPuertasCam);
  5.            nuevoCamion->setanio(anioCam);
  6.            nuevoCamion->setPrecio(precioCam);
  7.            nuevoCamion->setMarca(marcaCam);
  8.            nuevoCamion->setModelo(modeloCam);
  9.            nuevoCamion->setColor(colorCam);
  10.  
  11.            //Añadiendo los camiones a nCamiones a arreglo y lo actualiza
  12.            //recorar nuevoCamion instancia de Camion                                        
  13.            Camion[nCamiones++] = nuevoCamion;

Y mis ultimas dos dudas.

1. Pero para ir guardando los registros del cada camion. estaria bien asi ya que todavía no lo estoy mostrando solo guardanlos.


Código
  1. Camion[nCamiones++] = nuevoCamion; //Tambien esta donde le mando los argumentos a los metodos para que se observe mejor.

2. Una anotación que me llamo mucho la atención es de la clase persona. Eso me hace pensar, no sé si estoy en lo correcto que debería de crear la de encabezado que gestiona los datos de una persona. y la de implementación que se encarga de comunicarse con el usuario. .

En mi caso sería una para que me gestione los datos de listaDeCamiones la .h y la otra que se comunique con el usuario .cpp

Y no sé si estoy mal lo dices para mantener la robustez de un software y la legibilidad del mismo.

Muchas gracias por su ayuda enserio mil gracias me han ayudado a mejorar en un 100% en cuanto al manejo de código y a las buenas practicas. Siempre las tomo y más cuando te ayudan a agilizar y sobretodo que otras personas lo entiendan.

agradezco a primeramente a eferion y a yoel_alejandro. por tomarce todo ese tiempo para ayudarme y con eso doy por cerrado este tema.

y me dare la tarea de los demas hacerlo yo, ya que no veo mucha dificulta haciendo el primero. tanto con vectores como con arreglo de apuntadores. para entender este tema mejor.

Y gracias de nuevo un saludo a todos.
276  Programación / Programación C/C++ / Re: El for no me hace su funcion? en: 5 Febrero 2014, 11:52 am
El de vectores ya esta, si funciono y me confundi en esta parte por eso no sabia donde declarar esa varible Gracias.

std::vector< Camion* > Camiones;
Camiones.push_back( new_camion );
 
Camion* camion = Camiones[ 0 ]; //1.esta parte

   std::vector< Camion* > camiones;
    
    // ...
    
    if ( camiones.size( ) < Maximo )
    {
     // ...
    
     camiones.push_back( new_camion ); //2.estaparte
    }
    else
    {
     // ...
    }

//Codigo arreglo de punteros
//Camiones.h
Código
  1. #ifndef CAMION_H
  2. #define CAMION_H
  3. #include <iostream>
  4. using namespace std;
  5. // Variables globales si la hay
  6.  
  7. class Camion
  8. {
  9.      //Variables Privadas
  10.      private:
  11.      int idCamion;
  12.      int cilindrajeCamion;
  13.      int nPuertasCamion;
  14.      int anioCamion;
  15.      double precioCamion;
  16.      string marcaCamion, modeloCamion, colorCamion;
  17.  
  18.  
  19.      public:
  20.  
  21.      //Constructores.
  22.      Camion(int =0, int=0, int=0, int=0);
  23.      Camion(double =0.0);
  24.      Camion(string = "", string = "", string = "");
  25.  
  26.      //Funciones o metodos publicos
  27.      void setIdCamion(int);         //Devuelve el Id del Camion.
  28.      void setCilindrajeCamion(int); //Devuelve el cilindrage del camion
  29.      void setNPuertasCamion(int);   //Devuelve el numero de puertas del camion
  30.      void setanioCamion(int);       //Devuelve el año del camion
  31.      void setPrecioCamion(double);  //Devuelve el precio del camion
  32.      void setMarcaCamion(string);   //Devuelve la marca del camion
  33.      void setModeloCamion(string);  //Devuelve el modelo del camion
  34.      void setColorCamion(string);   //Devuelve el color del camion
  35.  
  36.      int getIdCamion() const;         //Obtiene Id del Camion.
  37.      int getCilindrajeCamion() const; //Obtiene el cilindrage del camion
  38.      int getnPuertasCamion() const;   //Obtiene numero de puertas del camion
  39.      int getanioCamion() const;       //Obtiene el año del camion
  40.      double getPrecioCamion() const;  //Obtiene el precio del camion
  41.      string getMarcaCamion() const;   //Obtiene la marca del camion
  42.      string getModeloCamion() const;  //Obtiene el modelo del camion
  43.      string getColorCamion() const;   //Obtiene el color del camion
  44.  
  45.  
  46.      //Otros Metodos
  47.      void ingresarCamion();
  48.      void flistaDeCamiones();
  49.      void imprimir();
  50.      int buscarCamion(int);
  51.      void modificarCamion();
  52.      void eliminarCamion();
  53.  
  54.      private:
  55.      Camion**listaDeCamiones;
  56.      int cantidadDeCamiones;
  57.  
  58. };
  59. #endif

//Camion.cpp
Código
  1. #include "Camion.h"
  2. #include <iostream>
  3. #include <iomanip>
  4. #include <string>
  5.  
  6. //Constructores valores enteros
  7. Camion::Camion (int idCam, int cilindrajeCam, int puertasCam, int anioCam)
  8. {
  9.  idCamion = idCam;
  10.  cilindrajeCamion = cilindrajeCam;
  11.  nPuertasCamion = puertasCam;
  12.  anioCamion = anioCam;
  13.  cantidadDeCamiones =0;
  14. }
  15.  
  16. //Constructores valores double
  17. Camion::Camion(double precioCam)
  18. {
  19.  precioCamion = precioCam;
  20. }
  21.  
  22. //Constructores valores string
  23. Camion::Camion(string marcaCam, string modeloCam,string colorCam)
  24. {
  25.   marcaCamion = marcaCam;
  26.   modeloCamion = modeloCam;
  27.   colorCamion = colorCam;
  28. }
  29.  
  30. //Funciones set
  31. void Camion::setIdCamion(int idCam)
  32. {
  33.     idCamion = idCam;
  34. }
  35.  
  36. void Camion::setCilindrajeCamion(int cilindrajeCam)
  37. {
  38.     cilindrajeCamion = cilindrajeCam;
  39. }
  40.  
  41. void Camion::setNPuertasCamion(int puertasCam)
  42. {
  43.     nPuertasCamion = puertasCam;
  44. }
  45.  
  46. void Camion::setanioCamion(int anioCam)
  47. {
  48.     anioCamion = anioCam;
  49. }
  50.  
  51. void Camion::setPrecioCamion(double precioCam)
  52. {
  53.     precioCamion = precioCam;
  54. }
  55.  
  56. void Camion::setMarcaCamion(string marcaCam)
  57. {
  58.     marcaCamion = marcaCam;
  59. }
  60.  
  61. void Camion::setModeloCamion(string modeloCam)
  62. {
  63.     modeloCamion = modeloCam;
  64. }
  65.  
  66. void Camion::setColorCamion(string colorCam)
  67. {
  68.     colorCamion = colorCam;
  69. }
  70.  
  71. //Funciones get
  72. int Camion::getIdCamion() const
  73. {
  74.    return idCamion;
  75. }
  76.  
  77. int Camion::getCilindrajeCamion() const
  78. {
  79.    return cilindrajeCamion;
  80. }
  81.  
  82. int Camion::getnPuertasCamion() const
  83. {
  84.    return nPuertasCamion;
  85. }
  86.  
  87. int Camion::getanioCamion()const
  88. {
  89.    return anioCamion;
  90. }
  91.  
  92. double Camion::getPrecioCamion() const
  93. {
  94.       return precioCamion;
  95. }
  96.  
  97. string Camion::getMarcaCamion() const
  98. {
  99.       return marcaCamion;
  100. }
  101.  
  102. string Camion::getModeloCamion() const
  103. {
  104.       return modeloCamion;
  105. }
  106.  
  107. string Camion::getColorCamion() const
  108. {
  109.       return colorCamion;
  110. }

//ListaCamiones.cpp
Código
  1. #ifndef LISTADECAMIONES_H
  2. #define LISTADECAMIONES_H
  3. #include "Camion.h"
  4. #define MAXIMO 100
  5.  
  6. class listaDeCamiones
  7. {
  8.      //Variables para esta clase
  9.      Camion Camiones[MAXIMO];
  10.      int nCamiones;
  11.  
  12.      void listaDeCamiones::ingresarCamion()
  13.      {
  14.           int idCam, cilindrajeCam, nPuertasCam, anioCam;
  15.           string marcaCam, modeloCam, colorCam;
  16.           double precioCam;
  17.  
  18.           nCamiones =0; //Inicializo variable nCamiones.
  19.  
  20.           //If No sobre pase la cantidad de camiones
  21.           if (nCamiones < MAXIMO)
  22.           {
  23.            system("cls");
  24.            cout << "Ingrese los datos del camion\n";
  25.            cout << "Ingrese el ID del camion: ";
  26.            cin  >> idCam;
  27.  
  28.            cout << "Ingrese el cilindraje del camion: ";
  29.            cin  >> cilindrajeCam;
  30.  
  31.            cout << "Ingrese el numero de puertas: ";
  32.            cin  >>  nPuertasCam;
  33.  
  34.            cout << "Ingrese el año del Camion: ";
  35.            cin  >> anioCam;
  36.  
  37.            cout << "Ingrese el presio del camion: ";
  38.            cin  >> precioCam;
  39.  
  40.            cout << "Ingrese la Marca del Camion: ";
  41.            cin  >> marcaCam;
  42.  
  43.            cout << "Ingrese el Modelo del camion: ";
  44.            cin  >> modeloCam;
  45.  
  46.            cout << "Ingrese el color del camion: ";
  47.            cin  >> colorCam;
  48.  
  49.            //Instancia de camion y separado por cada constructo    
  50.            Camion *nuevoCamion1 = new Camion(idCam, cilindrajeCam, nPuertasCam, anioCam);
  51.            Camion *nuevoCamion2 = new Camion(precioCam);
  52.            Camion *nuevoCamion3 = new Camion(marcaCam, modeloCam, colorCam);
  53.  
  54.            //Añade al arreglo y lo actualiza                                        
  55.            Camiones[nCamiones++] = new_nuevoCamion;
  56.            cout << endl <<"Los datos del camion fueron ingresados correctamente\n";
  57.            }
  58.  
  59.        else
  60.        {
  61.         system("cls");
  62.         cout << "Ya no hay espacio disponible para mas camiones\n";
  63.        }
  64.     }
  65. };
  66.  
  67. #endif
//Esta parte ya la había probado y estas en lo correcto no tira error de esa forma.
Código
  1. Camion *nuevoCamion1 = new Camion(idCam, cilindrajeCam, nPuertasCam, anioCam);
  2.            Camion *nuevoCamion2 = new Camion(precioCam);
  3.            Camion *nuevoCamion3 = new Camion(marcaCam, modeloCam, colorCam);

//Ahora el error es acá. Entonces eso quiere decir que ahora tendré que crear un arreglo y que lo actualice de acuerdo a sus argumentos.
Código
  1. Camiones[nCamiones++] = new_nuevoCamion1;
  2. Camiones[nCamiones++] = new_nuevoCamion2;
  3. Camiones[nCamiones++] = new_nuevoCamion3;

//En esta parte tambien pense lo mismo y era lo que preguntaba mas arriba que si //era asi que es lo que tu mecomentas.
Código
  1. Camion nuevoCamion* = new Camion(idCam, cilindrajeCam, nPuertasCam, anioCam);


En cuanto a la liberación de memoria tengo estas funciones y hay una donde lo hace lo tengo en mente pero no puedo implementarlas si no puedo hacer la primera función que es la de ingresarlos porque estas irían en listaCamiones.Y tengo claro que cambiaran por supuesto y que tengo que arreglarlos también.

Código
  1. //Muestra los datos del camion
  2. void Camion::flistaDeCamiones()
  3. {
  4.     if (cantidadDeCamiones==0)
  5.     {
  6.       system("cls");
  7.       cout<<"No se a registrado ninguna Camion todavía"<<endl;
  8.     }
  9.       else
  10.       {
  11.           cout<<"..:::Lista de Camiones:::.."<<endl<<endl;
  12.           cout << setw(10)<<"Id Camion"<<setw(15)<<"Modelo"<<setw(15)<<"marca"<<endl;
  13.           cout<<"================================================="<<endl;
  14.  
  15.           //Imprimmir todos los camiones almacenadas en el arreglo
  16.           for (int i=0; i<cantidadDeCamiones; i++)
  17.           {
  18.             listaDeCamiones[i]->imprimir(); //PROBLEMA Y NO LO IDENTIFICO
  19.           }
  20.           cout<<endl<<"*******Fin de la lista **********"<<endl<<endl;
  21.       }
  22. }
  23. //Busca ese camion
  24. int Camion::buscarCamion(int codigo)
  25. {
  26.    for (int i=0; i < cantidadDeCamiones; i++)
  27.    {
  28.        if(listaDeCamiones[i]->getIdCamion() == codigo)
  29.        {
  30.          return i;
  31.        }
  32.    }
  33.    return -1;
  34. }
  35.  
  36. //Modifica ese Camion.
  37. void Camion::modificarCamion()
  38. {
  39.     if (cantidadDeCamiones == 0)
  40.     {
  41.       system("cls");
  42.       cout << "No se ha registrado ningun camion tadavia\n";
  43.     }
  44.     else
  45.     {
  46.         cout << "Modificar Camion\n\n";
  47.         int codigoCamion;
  48.         cout << "Ingrese el codigo del camion: ";
  49.         cin >> codigoCamion;
  50.  
  51.         int ubicacion = buscarCamion(codigoCamion);
  52.         if (ubicacion == -1)
  53.         {
  54.           cout << "Lo sentimos ese codigo del camion no existe\n";
  55.         }
  56.         else
  57.         {
  58.             cout << "El codigo se encontro\n\n";
  59.             cout << setw(10)<<"Id"<<setw(15)<<"Modelo"<<setw(15)<<"marca"<<endl;
  60.             cout<<"================================================="<<endl;
  61.  
  62.             listaDeCamiones[ubicacion]->imprimir();
  63.             cout << "\n\n";
  64.             cout  << "Ingrese los nuevos datos del Camion\n\n";
  65.  
  66.             cout <<  "Marca";
  67.             cin  >> marcaCamion;
  68.  
  69.             cout << "Modelo del camion: ";
  70.             cin  >> modeloCamion;
  71.  
  72.             cout << "Año del Camion: ";
  73.             cin  >> anioCamion;
  74.  
  75.             cout << "Cilindraje del camion: ";
  76.             cin  >> cilindrajeCamion;
  77.  
  78.             cout << "numero de puertas: ";
  79.             cin  >>  nPuertasCamion;
  80.  
  81.             cout << "Color del camion: ";
  82.             cin  >> colorCamion;
  83.  
  84.             cout << "Presio del camion: ";
  85.             cin  >> precioCamion;
  86.  
  87.             listaDeCamiones[ubicacion]->setMarcaCamion(marcaCamion);
  88.             listaDeCamiones[ubicacion]->setModeloCamion(modeloCamion);
  89.             listaDeCamiones[ubicacion]->setanioCamion(anioCamion);
  90.             listaDeCamiones[ubicacion]->setCilindrajeCamion(cilindrajeCamion);
  91.             listaDeCamiones[ubicacion]->setNPuertasCamion(nPuertasCamion);
  92.             listaDeCamiones[ubicacion]->setColorCamion(colorCamion);
  93.             listaDeCamiones[ubicacion]->setPrecioCamion(precioCamion);
  94.  
  95.             cout << "El camion fue modificado Exitosamente.\n";
  96.         }
  97.     }
  98. }
  99.  
  100. void Camion::eliminarCamion()
  101. {
  102.     if (cantidadDeCamiones == 0)
  103.     {
  104.       system("cls");
  105.       cout << "No se ha registrado ningun camion tadavia\n";
  106.     }
  107.     else
  108.     {
  109.         cout << "Eliminar Camion\n\n";
  110.         int codigoCamion;
  111.         cout << "Ingrese el codigo a eliminar: ";
  112.         cin >> codigoCamion;
  113.  
  114.         int ubicacion = buscarCamion(codigoCamion);
  115.         if (ubicacion == -1)
  116.         {
  117.           cout << "Lo sentimos ese codigo del camion no existe\n";
  118.         }
  119.         else
  120.         {
  121.             cout << "El codigo se encontro\n\n";
  122.             cout << setw(10)<<"Id"<<setw(15)<<"Modelo"<<setw(15)<<"marca"<<endl;
  123.             cout<<"================================================="<<endl;
  124.  
  125.             listaDeCamiones[ubicacion]->imprimir();
  126.             cout << "\n\n";
  127.  
  128.             cout << "Presione enter para eliminar ese camion\n\n";
  129.             system("pause");
  130.  
  131.             //Pasa a eliminar usando una copia del arreglo
  132.             Camion**temporalListaDeCamiones = new Camion*[Maximo];
  133.             int temporalCantidadDeCamiones = 0;
  134.  
  135.             //Se copia el arreglo en otro arreglo exepto el que se quiere eliminar
  136.             for(int i =0; i < cantidadDeCamiones; i++)
  137.             {
  138.               if(i!=ubicacion)
  139.               {
  140.                 temporalListaDeCamiones[temporalCantidadDeCamiones] = new Camion(listaDeCamiones[i]->getIdCamion(),
  141.                                                                                  listaDeCamiones[i]->getCilindrajeCamion(),
  142.                                                                                  listaDeCamiones[i]->getnPuertasCamion(),
  143.                                                                                  listaDeCamiones[i]->getanioCamion(),
  144.                                                                                  listaDeCamiones[i]->getPrecioCamion(),
  145.                                                                                  listaDeCamiones[i]->getMarcaCamion(),
  146.                                                                                  listaDeCamiones[i]->getModeloCamion(),
  147.                                                                                  listaDeCamiones[i]->getColorCamion());
  148.                 temporalCantidadDeCamiones++;
  149.               }//Fin if
  150.             }//Fin for
  151.  
  152.             //Limpio la memoria usada por el arreglo principal de camiones
  153.             for(int i=0; i<cantidadDeCamiones; i++)
  154.             {
  155.               listaDeCamiones[i]->~Camion();
  156.             }
  157.  
  158.             //copia el arreglo temporal al principio
  159.             cantidadDeCamiones = 0;
  160.             for(int i =0; i<temporalCantidadDeCamiones; i++)
  161.             {
  162.                listaDeCamiones[cantidadDeCamiones] = new Camion(temporalListaDeCamiones[i]->getIdCamion(),
  163.                                                                 temporalListaDeCamiones[i]->getCilindrajeCamion(),
  164.                                                                 temporalListaDeCamiones[i]->getnPuertasCamion(),
  165.                                                                 temporalListaDeCamiones[i]->getanioCamion(),
  166.                                                                 temporalListaDeCamiones[i]->getPrecioCamion(),
  167.                                                                 temporalListaDeCamiones[i]->getMarcaCamion(),
  168.                                                                 temporalListaDeCamiones[i]->getModeloCamion(),
  169.                                                                 temporalListaDeCamiones[i]->getColorCamion());
  170.                cantidadDeCamiones++;
  171.             }//Fin for
  172.             cout << "El camion fue eliminado exitosamente\n\n";
  173.         }//fin else
  174.     }
  175.  
  176. }
  177.  
  178. //Imprime los datos del Camion
  179. void Camion::imprimir()
  180. {
  181.     cout<<setw(10)<<idCamion<<setw(15)<<modeloCamion<<setw(15)<<marcaCamion<<endl;
  182. }
277  Programación / Programación C/C++ / Re: El for no me hace su funcion? en: 5 Febrero 2014, 11:06 am
Hola Muchas gracias a todos, me da hasta un poco de pena molestarlos.
Y antes que nada entiendo si ya no quieren contestar.
Pero como pueden ver no soy muy bueno en C++ y quiero aprenderlo.

Creeo que esta es la parte fea de C++ ;D

Tengo una duda no se si es por que no he dormido

En Camion.cpp tengo el maximo ya lo quite ya que lo defini en la clase listasCamiones.cpp.

Código
  1. Maximo =100;
  2. cantidadDeCamiones =0;

Y en Camion.h eso está bien como lo he modificado tanto que así lo tenía cuando funcionaba pero no de la forma correcta pero ahora que estoy hice clase listaCamiones no sé si sean necesarias.

Código
  1. private:
  2.     Camion**listaDeCamiones;
  3.     //int Maximo;
  4.     int cantidadDeCamiones;

Si se fijan estoy probando tanto vectores me señalo eferion y con arreglos por que se, de que de las dos formas es impórtate hacerlo.

Y este es el error con arreglo de punteros. Que es el que mencionaba de la forma de yoel_alejandro.



Y este es la forma en que me señala eferion.


278  Programación / Programación C/C++ / Re: El for no me hace su funcion? en: 5 Febrero 2014, 09:19 am
Gracias primero que nada

Además es altamente recomendable que en la declaración de las funciones aparezcan los nombres de los argumentos.

tipo nomFuncion(int); //Yo.
tipo nomFuncion(int argumento) //Si no me equivoco esto es lo que me decís pueda que se la costumbre y por eso no lo hago. Pero lo adoptare. Gracias por eso también.

Además es altamente recomendable que en la declaración de las funciones aparezcan los nombres de los argumentos... normalmente cuando estés programando mirarás el archivo de cabecera para recordar el uso de las funciones, ya que suelen ser más sencillos de consultar... si tienen 20 argumentos y encima no están etiquetados te quedas sin esta opción.

Gracias por este consejo siempre etiqueto los métodos lo hago al final pero creo que tienes razón es mejor hacerlo desde un principio.

Por otro lado, otra sugerencia, deberías eliminar el using namespace std de los archivos de cabecera

Totalmente de acuerdo solo que a veces no se cual el problema y me pongo tonto.

Ahorita pruebo he intento todo lo que me has comentado.

Se agradece mucho a todos los que comentan y reitero que se toman su tiempo para ayudarme y además te aconsejan en la buena práctica.

Probando y comento como me va si lo logro.

PD:Me regresaste a la vida loco estaba por, darme, por vencido.
279  Programación / Programación C/C++ / Re: El for no me hace su funcion? en: 5 Febrero 2014, 07:44 am
Código
  1. Camion new_Camion = new Camion( idCamion, cilindrajeCamion,
  2.        nPuertasCamion, anioCamion,
  3.        precioCamion, marcaCamion,
  4.        modeloCamion,colorCamion);
  5.  
  6.    /* y la añades al arreglo, actualizando el contador */
  7.    Camiones[ N_Camiones++ ] = new_Camion;

no se, si se le olvido a yoel_alejandro asignar el apuntador hice esto.
pero el arreglo a la hora ingresar un registro del camion entra de un solo al else y me dice que ya no hay espacio para mas camiones  :-(

Código
  1. Camion *nuevoCamion = new Camion(idCam, cilindrajeCam,  
  2.                             nPuertasCam,  anioCam,  
  3.                             precioCam, marcaCam,
  4.                             modeloCam, colorCam);
  5.  
  6. Camiones[nCamiones++] = *nuevoCamion;
280  Programación / Programación C/C++ / Re: El for no me hace su funcion? en: 5 Febrero 2014, 03:59 am
Hola ya cree la clase y le paso los datos pero ahora me dice.
lamento preguntar tanto. pero me quiero arrancar la cabeza.

Hola pense que era por que no habia includio la libreria de string o el usign namespace std; pero no.

y se que hace referencia al constructor de la clase camion pero veo que le mando los parametros o argumentos correctos.

Ya note donde está el problema es que no estoy apuntando a nada. Según leí  Cuando se usa el operador new se tiene que usar apuntadores a fuerza. Y ese es el problema espero resolverlo pronto.



Código
  1. #ifndef LISTACAMIONES_H
  2. #define LISTACAMIONES_H
  3. #include "Camion.h"
  4. #define Maximo 100
  5.  
  6. class listaCamiones
  7. {
  8.      Camion camiones[Maximo];
  9.      int nCamiones;
  10.  
  11.      //Ingresa un nuevo camion
  12. void listaCamiones::ingresarCamion()
  13. {
  14.     int idCamion, anioCamion, cilindrajeCamion, nPuertasCamion;
  15.     double precioCamion;
  16.     string colorCamion, marcaCamion, modeloCamion;
  17.    //listaDeCamiones = new Camion*[Maximo];// arreglo de 100
  18.  
  19.   if (nCamiones < Maximo)
  20.   {
  21.     system("cls");
  22.     cout << "Ingrese los datos del camion\n";
  23.     cout << "Ingrese el ID del camion: ";
  24.     cin  >> idCamion;
  25.  
  26.     cout << "Ingrese la Marca del Camion: ";
  27.     cin  >> marcaCamion;
  28.  
  29.     cout << "Ingrese el Modelo del camion: ";
  30.     cin  >> modeloCamion;
  31.  
  32.     cout << "Ingrese el año del Camion: ";
  33.     cin  >> anioCamion;
  34.  
  35.     cout << "Ingrese el cilindraje del camion: ";
  36.     cin  >> cilindrajeCamion;
  37.  
  38.     cout << "Ingrese el numero de puertas: ";
  39.     cin  >>  nPuertasCamion;
  40.  
  41.     cout << "Ingrese el color del camion: ";
  42.     cin  >> colorCamion;
  43.  
  44.     cout << "Ingrese el presio del camion: ";
  45.     cin  >> precioCamion;
  46.  
  47.     Camion nuevoCamion = new Camion(idCamion, cilindrajeCamion, nPuertasCamion,
  48.                                     anioCamion, precioCamion, marcaCamion, modeloCamion,
  49.                                     colorCamion);
  50.  
  51.     camiones [nCamiones++] = nuevoCamion;
  52.  
  53.     cout << endl <<"Los datos del camion fueron ingresados correctamente\n";
  54.   }
  55.   else
  56.   {
  57.       system("cls");
  58.       cout << "Ya no hay espacio disponible para mas camiones\n";
  59.   }
  60. }
  61.  
  62. };
  63.  
  64. #endif
Páginas: 1 ... 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 [28] 29 30 31 32
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines