Nie moge wywolac metody z klasy rodzica

Odpowiedz Nowy wątek
2015-01-26 17:09
0

Hej,

mam taki problem: Nie mogę wywołać metody z klasy rodzica.
Klasa Podstawowa wygląda tak:
http://codepaste.net/hkv51s
( ma służyć w późniejszym etapie bardziej za interface niż za używaną klasę, ale póki co musi stanowić miks).

a w niej ( na samym dole) funkcja wartosc_ataku_dystans();
http://codepaste.net/3t4a2r

zrobiłem klasę pochodną Ork, chciałbym aby w niej stworzyć funkcję wartosc_ataku_dystans(); ktora najpierw zrobi
cout << "Roaaarrr" ; a potem wywola najnormalniej metode wartosc_ataku_dystans(), z klasy podstawowej.

Próbuję to zrobić tak:
http://codepaste.net/fqicqm (plik .h i .cpp nizej)

Niestety otrzymuje wtedy informację:
Error, a non static member reference must be relative to a specific object;

Nie wiem w jaki sposób powiedzieć programowi, że przecież ma pracować na specyficznym obiekcie (sobie!) i wykorzystać funkcję, którą odziedziczył. Prosze o pomoc.

Pozostało 580 znaków

2015-01-26 17:26

No to skoro to ma być METODA obiektu to ją definiuj tak jak metodę obiektu, tzn z Ork:: w sygnaturze. Mam wrażenie że nie do końca rozumiesz co i dlaczego w tym kodzie masz napisane tak jak masz...

int wartosc_ataku_dystans(){
    Istota::wartosc_ataku_dystans(); 
}

To jest zwykła funkcja.

int Ork::wartosc_ataku_dystans(){
    Istota::wartosc_ataku_dystans(); 
}

to jest metoda...


Masz problem? Pisz na forum, nie do mnie. Nie masz problemów? Kup komputer...

Pozostało 580 znaków

2015-01-26 17:29
0

Może nie tyle nie rozumiem co nie zauważyłem.
Szkolny błąd, aż głupio. Dzięki!

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

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