Gast
#3609976
Hallo Leute, ist es moeglich in einem struct objekte von klassen "zusammen zufassen"? In etwa so:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
gcc 4.7.2 Gruesse
|
Anzeige
|
struct mit klassen objekten
Gast
#3609976
Hallo Leute, ist es moeglich in einem struct objekte von klassen "zusammen zufassen"? In etwa so:
gcc 4.7.2 Gruesse Natürlich geht das, warum nicht? Edit: Was nicht geht, ist die Argumentübergabe an die jeweiligen Konstruktoren. Dazu musst du für OBJECTS einen Konstruktoren schreiben, der die Unterobjekte initialisiert. Übrigens: Statt
kannst du in C++ auch einfach
schreiben.
Gast
#3610040
Yalu X. schrieb: > Edit: Was nicht geht, ist die Argumentübergabe an die jeweiligen > Konstruktoren. Dazu musst du für OBJECTS einen Konstruktoren schreiben, > der die Unterobjekte initialisiert. Das war es, was mir gefehlt hat. Vielen Dank! :)
Gast
#3610048
Yalu X. schrieb: > Edit: Was nicht geht, ist die Argumentübergabe an die jeweiligen > Konstruktoren. Dazu musst du für OBJECTS einen Konstruktoren schreiben, > der die Unterobjekte initialisiert. warum sollte das nicht gehen? Struct ist auch nur eine class wo alles public ist.
Gast
#3610060
Yalu X. schrieb: > Natürlich geht das, warum nicht? Peter II schrieb: > warum sollte das nicht gehen? Das mit dem Konstruktor wusste ich nicht, und da gab es dann bei der Benutzung Errormeldungen ala "xyz ist kein Member der Klasse A...". Durch den Hinweis mit dem Konstruktor im struct hat sich das jetzt aber erledigt. :) Danke euch!
Gast
#3610078
Peter II schrieb: > Yalu X. schrieb: >> Edit: Was nicht geht, ist die Argumentübergabe an die jeweiligen >> Konstruktoren. Dazu musst du für OBJECTS einen Konstruktoren schreiben, >> der die Unterobjekte initialisiert. > > warum sollte das nicht gehen? Struct ist auch nur eine class wo alles > public ist. Weil der C++ Standard die Initialisierung von nicht-constexpr-Membern im Class-Body verbietet. Das muss in den Konstruktor - und zwar genau so wie du geschrieben hast (ja, das ist ein Konstruktor)... Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|