Was ist das hier?

  • Eine Plattform von Flensburger Studenten für Flensburger Studenten
  • Ein Wiki zum Sammeln von Wissen
  • Ein Forum zum Austausch
  • Eine Wissensdatenbank zum Informatikstudium:
    • Programmieren in C, C#, PHP, Javascript, HTML, CSS
    • Datenbanken und Abfragen mit SQL
    • 2D / 3D - Gestaltung
    • Mathe, Physik, Gerätetechnik, RoBs
    • Audio- / Videotechnik
    • ...und vieles mehr

Anmelden

Warum registrieren?

Weil besser als gut!

 

Aggregate (C++)

Sind Objekte in Objekten enthalten, spricht man von

  • Aggregaten,
  • Kompositionen,
  • verschachtelten Klassen (nested classes) oder
  • class type class members

Da die Terminologie hier unscharf ist, mögen folgende Varianten der Klarheit dienen:

Klasse in Klassendeklaration

Eine Klasse ist in einer Klassedeklaration deklariert:

  • hierdurch ist allein noch kein Objekt definiert
  • wurde die innere Klasse im privaten Teil deklariert, so steht sie nur innerhalb der äußeren Klasse für Instanziierungen zur Verfügung
  • wurde die innere Klasse im public Teil deklariert, so kann man auch von außerhalb mit dem Bereichsoperator :: auf die Deklaration zugreifen

Objekt in Klassendeklaration

Ein Objekt wird in einer Klassendeklaration instanziiert:

  • die Klasse des inneren Objekts kann wie oben oder außerhalb der äußeren Klasse deklariert sein (s. Beispiel init_list.cpp)
  • das Objekt unterliegt den bekannten Zugriffsrechten für public, private, protected
  • terminologisch wird manchmal noch unterschieden zwischen 'normaler' auto Deklaration (Komposition) und Zeiger oder Referenz auf Objekt (Aggregat)

Ein Beispiel ist in der Quellcode-Sammlung enthalten: class_in_class.cpp.


Kategorie: Programmieren2
| Mehr

Zahlen & Daten

  • 494 Seitenaufrufe
  • 1122 Tage alt
  • 2 Versionen
  • Letzte Änderung: 23.04.2009 um 09:43 Uhr

Publish