Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Realisierung von Aggregationen

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
14.04.2005, 23:11 Uhr
hans0815



Hallo zusammen,

ich steige grade in c++ ein. Du Grundkonzepte der objektorientierten Programmierung sind mir bekannt. Nun geht es an die Umsetzung. Ich möchte gern 2 Klassen mit der Beziehung "Teil -> Ganzes" (Aggregation) verknüpfen. Wie realisiert man das?

MfG
Hans
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
14.04.2005, 23:27 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


Eine Klasse definierst du so


C++:
class myClass{
  
   public:
    //public members  

   private:
    //private members

};



um deine aggregation abzubilden muss einfach nur ein member der klasse selbst eine klasse sein.
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
14.04.2005, 23:37 Uhr
hans0815



Hättest du mir vielleicht ein Beispiel dazu? Z.B. Auto(ganzes), Reifen (Teil)... Danke Dir.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
14.04.2005, 23:59 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


hab ich doch schon geschrieben wie es geht

C++:
class Reifen{.....};

class Auto{....private: Reifen reifen[4];};


--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
15.04.2005, 08:24 Uhr
stephanw
localhorst


Eine Aggregation ist eine "Sammlung", bei der die Teile wie auch der Container autark existieren können. Die Komposition ist stärker, da hier das Ganze nicht ohne die Teile existieren kann, siehe auch Auto-Reifen-Beispiel.
In C++ würde ich Aggregation mit Zeigern/Referenzen ausdrücken.

C++:
class Car
{
  Tyre* tyre;  // Aggregation
  Body  body;  // Komposition
};


Der/die Reifen sollte natürlich nicht unter der Verwaltung des Autos stehen, sondern dem Auto zeitweise zur Verfügung gestellt werden durch entsprechenden Konstruktor/set-Methode.
--
Reden ist Schweigen und Silber ist Gold.

Dieser Post wurde am 15.04.2005 um 08:27 Uhr von stephanw editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: