SoloCodigo
Programación General => C/C++ => C++ Builder => Mensaje iniciado por: luciano24 en Miércoles 27 de Noviembre de 2002, 22:54
-
Hola, escribo para ver si me pueden ayudar con el siguiente problema:
Tengo dos clases, una PERSONA y la otra que hereda de ésta que se llama EMPLEADO en una archivo Prueba.h:
class persona{
protected:
char *nombre;
public:
void ing_nombre (char *n){nombre = n;}
};
class empleado: public persona{
protected:
int legajo;
public:
void ing_legajo(int l){legajo= l;}
void mostrar()
};
Cuando se implementa en el archivo CPP queda de la siguiente manera:
# include <iostream.h>
# include <C:C++prueba.h>
void empleado::mostrar ()
{
cout <<"El nombre del empleado es:" <<nombre<<endl;
cout <<"El legajo es: "<<legajo<<endl;
};
void main(){
char *nom;
int leg;
empleado emp;
cout <<"Ingrese el mombre del empleado: "<<endl;
cin >>nom;
emp.ing_nombre(nom);
cout <<"Ingrese el legajo del empleado: "<<endl;
cin >>leg;
emp.ing_legajo(leg);
emp.mostrar ();
};
Pero cundo se compila, me surge el siguiente mensaje de error:
Compiling...
prueba2.cpp
c:c++prueba.cpp(4) : error C2143: syntax error : missing ';' before 'PCH creation point'
Error executing cl.exe.
prueba.obj - 1 error(s), 0 warning(s)
Me pueden decir si escribí algo mal, porque no puedo encontrar el error.
Muchas gracias.
-
Holas, porque no usas private en vez de protected?
-
El problema es que en el archivo prueba.h te falta el ; despues de void mostrar()
-
Ruso tiene toda la razon, no note eso:D