Dziedziczenie - konstruktor klasy bazowej, lista inicjalizacyjna (konkretnie argumenty)
Ostatnio zmodyfikowano 2017-05-16 10:20
pedeef Temat założony przez niniejszego użytkownika |
Dziedziczenie - konstruktor klasy bazowej, lista inicjalizacyjna (konkretnie argumenty) » 2017-05-16 10:03:38 Dzień dobry,
na wstępie chciałbym powiedzieć, że to nie mój wymysł a nie mam już bladego pojęcia jak się za to zabrać.
Otóż: Klasa bazowa Zawodnik i klasa po niej dziedzicząca napastnik, mają oto taką budowe <konstruktory>:
class Zawodnik { protected: char pozycja[20]; char kategoria_wiekowa[30]; int rocznik; public: char kto[20]; Zawodnik(char pozycja[], int rocz, char kto[]) :rocznik(rocz) { aktywniZawodnicy++; strcpy(pozycja,pozycja); strcpy(kto,kto); }
---------------------- class Napastic: public Zawodnik { private: int lbramek; public: Napastnik(int rocz, int bramki, char dane[])//: Zawodnik(pozycja,rocz,kto) { lbramek=bramki; }
Pytanie ma się co do listy inicjalizacyjnej, jak powinna wyglądać w tym przypadku? (Dziedziczy rocz i dane[] od Zawodnika, pozycja nie powinna tam być ale jest jako pierwszy argument w konstruktorze klasy bazowej).
Z góry dziękuję za pomoc
Pozdrawiam pedeef |
|
Monika90 |
» 2017-05-16 10:20:42 Gdyby na liście parametrów konstruktora klasy Zawodnik było słówko const: const char pozycja[], to mógłbyś przekazać literał "jakas tam pozycja" jako pierwszy parametr, ale nie ma tam const więc nic się nie da zrobić... |
|
« 1 » |