[C con Clase] tengo dudas con clases C++

David Reza l.fix3r.l en gmail.com
Sab Ene 12 07:00:55 CET 2008


On 01/01/2008, at 06:48 PM, ÄÐOLFO VIÐAL VÄM wrote:

> Hola amigos:
> estoy aprendiendo clases y tengo dudas con clases  en C++ y desearia  
> saber cual es el error de este codigo y si esta bien planteao el  
> codigo.
>
> #include <iostream.h>
> class cEstudiante
> {
> private:
>  int cod[9],x;
>  char *nombre[20];
> public:
>  cEstudiante();
>  ingresar();
>  mostrar();
> };
> cEstudiante::cEstudiante()
> {
>  x=0;
> }
> cEstudiante::ingresar()
> {
>  cout<<"ingrese codigo"<<endl;
>  cin>>cod[x];
>  cout<<"ingrese nombre"<<endl;
>  cin>>nombre[x];
>  x++;
> }
> cEstudiante::mostrar()
> {
>  for(int i=0;i<=x;i++)
>  {
>     cout<<"Codigo"<<this->cod[i]<<endl;
>     cout<<"nombre "<<this->nombre[i]<<endl;
>  }
> }
> void main()
> {
>         int op;
>         cEstudiante A;
>         cout<<"\n\n     *   M E N U  * ";
>         do{
>                 cout<<"\n======================================\n";
>                 cout<<"Selecione la opcion que desea\n";
>                 cout<<"======================================\n";
>                 cout<<"1.-Ingresar\n";
>                 cout<<"2.-Mostrar\n";
>                 cout<<"3.-Salir\n=>";
>                 cin>>op;
>            switch(op)
>      {
>                 case 1:
>      A.ingresar();
>                         break;
>                 case 2:
>      cout<<"\n\nmostrar??? ";
>                     A.mostrar();
>                         break;
>                 case 3:
>      cout<<"\nGracias!!!\n\n";
>                          break;
>                 default:
>      cout<<"\nEsa opcion no esta en el menu!!!\n";
>                         break;
>      }
>
>         }while (op<3);
> }

No estás declarando el valor de retorno de los métodos (ingresar y  
mostrar) tanto en la definición como en la implementación de la clase.

La condición del do-while debería de ser while(op>4).

cod y nombre no deberían de ser arreglos puesto que se crea un  
conjunto de ellos para cada objeto creado.

Tu método de "mostrar" está mal planteado, estás queriendo usar un  
método que se aplica a un objeto específico y dentro de ese método  
intentas utilizar varios objetos.

La variable x no te sirve de nada, deberías eliminiarla.

Sólo en eso te puedo ayudar hasta ahora, luego trataré de leer lo  
demás.

Saludos.

Enviado desde mi iPod Touch.



Más información sobre la lista de distribución Cconclase