I wrote the following code:
class Osoba{
private:
string imie, nazwisko, kolorOczu;
friend void Dziecko::coutall();
public:
Osoba(string imie, string
You cannot do it, because Dziecko::coutall is not defined when Osoba is compiled and there are no means in c++ to make forward member method declaration. Instead you can make friend all Dziecko class (as Nbr44 suggested)
It seems you can't call that method because it uses private members of class Osoba
.
Try using the imie
as a protected variable instead of private.
Here is a short explenation.
The 2 options available are:
1) friend
the entire class, not a good practice when using inheritance.
2) Use protected members. this is the best way to access private members on inheritance.