Wątek przeniesiony 2018-01-14 13:19 z C/C++ przez kq.

Dziedziczenie funkcji z klasy bazowej

0

witam
mam problem z dziedziczenien
mamy klase core i game

// core. h

class core
{
}
// game.h

#include core.h
class game : core
{
}

w klasie pochodnej game mamy dostep do funkcji core
ale juz w klasie bazowej nie mamy fuknkcji game, jestem w tym zielony, dopiero zaczynam z progr. obiektowym

0

No bo tak powinno być dziedzyczysz coś po rodzicach/dziadkach itp... i masz ich cechy, ale Twoja mama nie ma twoich cech. Tak samo jest tutaj.

0

i nie ma zadnej opcji zebym mial dostep do funkcji core?

2

Nie ma żadnej sensownej opcji. Jeśli pytasz o to na etapie designu, to robisz coś bardzo źle.

0

Przede wszystkim dziedziczone są metody, a nie funkcje (kwestia nazewnictwa). Metoda to funkcja będąca składnikiem klasy.

Co do Twojego dziedziczenia, to @kq napisał, że robisz już tutaj coś źle. I to widać na pierwszy rzut oka. Klasa Game dziedzicząca po Core. Raczej tak nie powinno być. Oczywiście nie wiem, co sobie wymyśliłeś, ale to już daje czerwoną lampkę.

Poza tym weź nie zaczynaj nauki programowania od robienia gier.

Co do samego pytania, prawdopodobnie Game powinno być osobną klasą, która nie dziedziczy po Core. W Core pewnie chcesz mieć jakieś metody ogólnodostępne, więc powinieneś z tego zrobić klasę statyczną / singleton / klasę implementującą jakiś interfejs -> to wszystko zależy od tego, co chcesz. Prawdopodobnie chcesz też za dużo robić w klasie Core.

Prawdopodobnie bardzo silnie chcesz powiązać klasę Core z Game, co szybko doprowadzi do problemów.

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