Tworzenie obiektów klasy pochodnej.

0

Dopiero ogarniam obiekty i klasy. Mógłby ktoś powiedzieć dlaczego wywołanie klasy w main w tym kodzie jest niepoprawne? Nie do końca wiem też co pisać w nawiasach przy wywoływaniu ( zawsze '0'?) nie mogę nigdzie znaleźć wytłumaczenia dokładnego. W różnych zadaniach wywala mi błąd w miejscu kiedy chcę stworzyć obiekt klasy pochodnej.

Link do kodu: http://pastebin.pl/view/6f46494a

1

Brak konstruktora bezparametrowego klasy bazowej.

Można dopisać ten konstruktor bezparametrowy klasy bazowej albo w klasie pochodnej zmienić konstruktor, który tam masz na:

LicznikSkokowy(int x): Licznik(x) {}

Co spowoduje wywołanie najpierw konstruktora klasy bazowej, a potem instrukcji (których w tym przykładzie brak) z konstruktora klasy pochodnej.
Bez tego jawnego wywołania konstruktora klasy bazowej kompilator próbował wywołać bezparametrowy konstruktor klasy bazowej, którego nie masz, gdyż ponieważ masz z parametrem typu int, to kompilator nie utworzył domyślnego bezparametrowego konstruktora, dlatego należy jawnie wywołać ów konstruktor klasy bazowej.

1
  1. wrzucaj kod bezpośrednio na forum
  2. nie mieszaj logiki z interakcją z użytkownikiem
  3. zamiast dziedziczenia prywatnego używaj agregacji, chyba, że jest to uzasadnione potrzebą implementacyjną (na 99% nie jest i długo nie będzie)
  4. nie używaj nieangielskiego nazewnictwa
    Licznik (int x)
    {
        x=wartosc;
    }

bzdura

1 użytkowników online, w tym zalogowanych: 0, gości: 1