Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Dziedziczenie - konstruktor klasy bazowej, lista inicjalizacyjna (konkretnie argumenty)

Ostatnio zmodyfikowano 2017-05-16 10:20
Autor Wiadomość
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
P-161181
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ć...
P-161183
« 1 »
  Strona 1 z 1