Mam pytanie jesli dziedzczac z klasy bazowej utworze obiekt na zmiennych skladowych z klas bazowej i pochodnej tworzac metode wypisz wyswietla blad ze skladniki sa prywatne, to co mam zrobic jesli dziedzicze publicznie chce je wyswietlic, musi zajsc potrzeba zmiany z private na protected nie ma innej opcji?
#include <iostream>
#include <cstring>
using namespace std;
class Warzywo
{
char* nazwa;
float waga;
public:
Warzywo(char* _nazwa, float _waga)
{
nazwa = new char[strlen(_nazwa)+1];
strcpy(nazwa,_nazwa);
waga = _waga;
}
};
class Marchewka :public Warzywo
{
string rozmiar;
public:
Marchewka(string _rozmiar, char* _nazwa, float _waga)
:Warzywo(_nazwa, _waga)
{
rozmiar = _rozmiar;
}
void wypisz();
};
void Marchewka::wypisz()
{
cout << "Marchewki dane:" << endl;
cout << "Rozmiar: " << rozmiar << endl;
cout << "Nazwa: " << nazwa << endl;
cout << "Waga: " << waga << endl;
}
int main()
{
Marchewka m1("XXL", "Adam", 341);
m1.wypisz();
return 0;
}