Wie ein Array aus Objekten anlegen?

OP #617882
Lesenswert?
• ▲
▼
Hallo,

ich habe eine Klasse K. Für die Konstruktion eines Objekts dieser Klasse 
sind zwei Parameter erforderlich. Also z.b. K k(param1,param2); Was ist 
aber wenn ich ein Array anlegen möchte? mit K 
k[5]{(param11,param12),(param21,param22)}; geht es nicht. Wie denn dann?

MfG Mark
#618130
Lesenswert?
• ▲
▼
Es geht um die Syntax in C++, mit der man ein Array aus
Objekten bei der Definition auch gleich initialisieren
kann. Und zwar nicht mit dem Defaultkonstruktor sondern
mit einem speziellen Konstruktor, der ein paar Argumente
nimmt.

Und die Sache ist die: es gibt dafür keine Syntax.

Was man aber machen kann, und das hat der Fragesteller
herausgefunden, man kann die Initialisierung über ein
paar Hilfsobjekte machen, die dann per Copy Konstruktor
in das Array rüberkopiert werden.
Persönliche Seite #618141
Lesenswert?
• ▲
▼
Karl heinz Buchegger wrote:
> Es geht um die Syntax in C++, mit der man ein Array aus
> Objekten bei der Definition auch gleich initialisieren
> kann.

Ahhh, das macht Sinn! Nein, das geht natürlich nicht. (Da hab ich auch 
schonmal nen ganzen Tag dran rumgerätselt, wie das ganze Funktionieren 
soll).

Geht das ganze nicht per Constructor initializer list (das mit dem : 
(Doppelpunkt) im Konstruktor der übergeordneten Klasse)?

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.