Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

hanhau

Treue Seele

  • »hanhau« ist der Autor dieses Themas

Beiträge: 80

Wohnort: St. Pölten, Österreich

Beruf: schueler

  • Private Nachricht senden

1

04.03.2015, 21:44

Unverständnis bei Vererbung bei Klassen

Abend, ich bins wieder :)

Ich habe mir schon öfters jetzt Guides durchgelesen zum Thema "Vererbung von Klassen",
trotzdem weiß ich nicht, wie ich mein Problem realisieren soll.

Ich möchte paar struct´s erstellen, deren Member in anderen Klassen vererbt werden kann,
wie zum Beispiel:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
struct Placement
{
    sf::Vector2f Pos;
    sf::Vector2f Siz;
}

class GUI_Element_Test
{
    private:
         // paar Member 
    public:
        // hier noch andere Member, zusätzlich sollten hier dann die
        // Member von Placement sein
}


Danke für Hilfe und eventuelle Aufklärungen ! :)
Oft denke ich an sie, niemals habe ich sie gefragt, niemals etwas gesagt,
nur verzweifelt am PC gesessen und dabei die Zeit vergessen, sie ist weg.

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

2

04.03.2015, 21:50

Bist du sicher, dass du die "Guides" gelesen hast?
Denn sonst wüsstest du ja zumindest die Syntax für Vererbung.

Weiterhin solltest du gelernt haben, dass die Vererbungsrelation so viel bedeutet wie "ist ein".
Also: Ist ein GUI_Element_Test ein Placement? Oder hat es nicht eher ein Placement? Im zweiten Fall wäre Komposition angebracht, nicht Vererbung.

hanhau

Treue Seele

  • »hanhau« ist der Autor dieses Themas

Beiträge: 80

Wohnort: St. Pölten, Österreich

Beruf: schueler

  • Private Nachricht senden

3

04.03.2015, 21:52

Komposition triffts eher, ja.
Ich bin mir wie gesagt echt nicht sicher, wie ich es anstellen soll.

Nun aber die Frage: Wie "komponiere" ich Klassen ? ^^
Oft denke ich an sie, niemals habe ich sie gefragt, niemals etwas gesagt,
nur verzweifelt am PC gesessen und dabei die Zeit vergessen, sie ist weg.

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

4

04.03.2015, 22:22

Öffentliche Vererbung wird genutzt wenn etwas abstrahiert wird.
Z.B. kannst du eine Tastatur- und Datei-Eingabe als eine allgemeine Eingabe abstrahieren. D.h. der Code der mit der Basisklasse Eingabe arbeitet, kann sowohl mit der Implementierung der Tastatur- und Dateieingaben arbeiten. Der Vorteil dabei ist, dass du den Code nur einmal brauchst, unabhängig davon ob die Daten aus einer Datei oder vom Benutzer abgefragt werden.
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

DeKugelschieber

Community-Fossil

Beiträge: 2 641

Wohnort: Rheda-Wiedenbrück

Beruf: Software-Entwickler

  • Private Nachricht senden

5

04.03.2015, 23:06

C-/C++-Quelltext

1
2
3
4
5
6
7
8
class ZuKomponieren{
    // ...
};

class Komponierende{
    private:
        ZuKomponieren komponente;
};

Werbeanzeige