我对以下代码有一些问题:
class Osoba {
std::string imie;
std::string nazwisko;
std::string pesel;
public:
Osoba(const std::string & im, const std::string & na, const std::string & pe);
std::string get_imie() const;
std::string get_nazwisko() const;
std::string get_pesel() const;
};
class Pracownik : public Osoba {
int liczba_godzin;
public:
Pracownik(const std::string & im, const std::string & na, const std::string & pe, int liczba_godzin);
Pracownik(const Osoba & o, int liczba_godzin);
int podaj_liczbe_godzin() const;
};
我需要编写一个构造代码。有人可以帮助我吗?我试过这样,但它不起作用:
Osoba::Osoba(const std::string & im, const std::string & na, const std::string & pe):imie(im), nazwisko(na), pesel(pe){};
Pracownik::Pracownik(const std::string & im, const std::string & na, const std::string & pe, int liczba_godzin):imie(im), nazwisko(na),pesel(pe),liczba_godzin(liczba_godzin){}
Pracownik::Pracownik(const Osoba & o, int liczba_godzin):Osoba(o), liczba_godzin(liczba_godzin){};
@edtit 错误日志如下:
C:\Users\Admin\Desktop\projekt\main.cpp In constructor `Pracownik::Pracownik(const std::string&, const std::string&, const std::string&, int)':
5 C:\Users\Admin\Desktop\projekt\main.cpp `std::string Osoba::imie' is private
37 C:\Users\Admin\Desktop\projekt\main.cpp within this context
37 C:\Users\Admin\Desktop\projekt\main.cpp class `Pracownik' does not have any field named `imie'
6 C:\Users\Admin\Desktop\projekt\main.cpp `std::string Osoba::nazwisko' is private
37 C:\Users\Admin\Desktop\projekt\main.cpp within this context
37 C:\Users\Admin\Desktop\projekt\main.cpp class `Pracownik' does not have any field named `nazwisko'
7 C:\Users\Admin\Desktop\projekt\main.cpp `std::string Osoba::pesel' is private
37 C:\Users\Admin\Desktop\projekt\main.cpp within this context
37 C:\Users\Admin\Desktop\projekt\main.cpp class `Pracownik' does not have any field named `pesel'
37 C:\Users\Admin\Desktop\projekt\main.cpp no matching function for call to `Osoba::Osoba()'
note C:\Users\Admin\Desktop\projekt\main.cpp:4 candidates are: Osoba::Osoba(const Osoba&)
note C:\Users\Admin\Desktop\projekt\main.cpp:4 Osoba::Osoba(const std::string&, const std::string&, const std::string&)