Bueno no es que sea un fiera en herencia pero intente arreglar lo que vi... y son unos cuantos errores.
Paso los archivos para que veas.
Tienes que crear un proyecto en codeblocks por ejemplo para que te compile correctamente.
Lo errores había de todo los tipos XDD
Faltaba algunos cierre de llaves también.
Compara el código con el tuyo y ya veras que errores hay.
Si tienes duda pues sigue preguntando.
La herencia ya funciona, como ves he creado un objeto tipo Empleado y le asigno un nombre. Si vas a la clase veras que no tiene la variable miembro suNombre, la recibe de la clase persona
Espero que te compile bien
Si necesitas el proyecto te lo subo también pero creo que no hace falta, solo creas un proyecto vació agregas todos los archivos y después marque que compile solo los .cpp
Suerte.
Ahora intenta pasar como privado las variables de la clase persona. Las variables no deben ser publicas, como minimo protected
Paso los archivos para que veas.
Tienes que crear un proyecto en codeblocks por ejemplo para que te compile correctamente.
Código (cpp) [Seleccionar]
/*
* File: Persona.h
* Author: Owen10
*
* Created on 10 de abril de 2014, 18:45
*/
#ifndef PERSONA_H
#define PERSONA_H
#include <iostream>
using namespace std;
class Persona {
public:
Persona();
virtual ~Persona();
Persona ( const Persona & orig );
Persona ( string unNombre );
string suNombre;
int suEdad;
private:
};
#endif /* PERSONA_H */
Código (cpp) [Seleccionar]
/*
* File: Empleado.h
* Author: Owen10
*
* Created on 10 de abril de 2014, 18:50
*/
#ifndef EMPLEADO_H
#define EMPLEADO_H
#include "Persona.h"
#include <iostream>
using namespace std;
class Empleado: public Persona {
public:
Empleado();
Empleado( string unNombre );
Empleado ( const Empleado & orig );
virtual ~Empleado();
private:
};
#endif /* EMPLEADO_H */
Código (cpp) [Seleccionar]
/*
* File: Persona.cpp
* Author: Owen10
*
* Created on 10 de abril de 2014, 18:45
*/
#include "Persona.h"
Persona::Persona() {}
Persona::Persona ( string unNombre ) { suNombre = unNombre; }
Persona::Persona ( const Persona & orig ) {}
Persona::~Persona() {}
Código (cpp) [Seleccionar]
/*
* File: Empleado.cpp
* Author: Owen10
*
* Created on 10 de abril de 2014, 18:50
*/
#include "Empleado.h"
Empleado::Empleado( string unNombre ) : Persona ( unNombre ) {}
Empleado::Empleado ( const Empleado & orig ) {}
Empleado::~Empleado() {}
Código (cpp) [Seleccionar]
/*
* File: main.cpp
* Author: Owen10
*
* Created on 10 de abril de 2014, 18:44
*/
#include <cstdlib>
#include <iostream>
#include "Persona.h"
#include "Empleado.h"
using namespace std;
/*
*
*/
int main ( int argc, char ** argv ) {
Empleado e("romoardo");
cout << e.suNombre;
}
Lo errores había de todo los tipos XDD
Faltaba algunos cierre de llaves también.
Compara el código con el tuyo y ya veras que errores hay.
Si tienes duda pues sigue preguntando.
La herencia ya funciona, como ves he creado un objeto tipo Empleado y le asigno un nombre. Si vas a la clase veras que no tiene la variable miembro suNombre, la recibe de la clase persona
Espero que te compile bien
Si necesitas el proyecto te lo subo también pero creo que no hace falta, solo creas un proyecto vació agregas todos los archivos y después marque que compile solo los .cpp
Suerte.
Ahora intenta pasar como privado las variables de la clase persona. Las variables no deben ser publicas, como minimo protected