Witam,
Mam pewien problem związany z moim programem.
#ifndef COSOBA_H
#define COSOBA_H
class COsoba
{
public:
COsoba(wxString imie = "-brak-",wxString nazwisko = "-brak-")
{
Imie = imie;
Nazwisko = nazwisko;
}
~COsoba()
{
}
virtual wxString Info()=0;
protected:
wxString Imie,Nazwisko;
};
#endif // COSOBA_H
Po uruchomieniu w klasie podanej wyżej występuje następujący błąd:
F:/cosoba.h:13:11: error: invalid use of non-static data member 'COsoba::Imie'
F:/cwykladowca.h:13:3: error: from this location
F:/cosoba.h:13:16: error: invalid use of non-static data member 'COsoba::Nazwisko'
F:/cwykladowca.h:14:3: error: from this location
Czy mógł by ktoś poradzić jak rozwiązać ten problem? Tutaj podaj kod reszty klas:
#ifndef CWYKLADOWCA_H
#define CWYKLADOWCA_H
#include "cpracownik.h"
// Base class: CPracownik
class CWykladowca : public CPracownik
{
public:
CWykladowca(wxString imie='-brak-',wxString nazwisko='-brak-', double pensum=0.0)
{
Imie=imie;
Nazwisko=nazwisko;
Pensum=pensum;
}
~CWykladowca();
wxString Info()
{
return wxString::Format(Imie,Nazwisko," ma pensum ",Pensum);
}
protected:
double Pensum;
};
#endif // CWYKLADOWCA_H
#ifndef CPRACOWNIK_H
#define CPRACOWNIK_H
#include "cosoba.h" // Base class: COsoba
class CPracownik : public COsoba
{
public:
CPracownik(wxString imie='-brak-', wxString nazwisko='-brak-', double etat=0.0, double pensja=0.0)
{
Imie=imie;
Nazwisko=nazwisko;
Etat=etat;
Pensja=pensja;
}
~CPracownik()
{
}
wxString Info()
{
return wxString::Format(Imie,Nazwisko," ma etat i pensje ",Etat,Pensja);
};
protected:
double Pensja;
double Etat;
#endif // CPRACOWNIK_H