array zur laufzeit initialisieren
-
Servus,
Man kann ja bei der deklaration nen String direkt initialisierendouble dreieck_xpos[]= { 100,200,160,260,200,250,600,350,400,500, };nun hab ich aber diese variabel als private in einer klasse vorliegen.
Also möchte ich die erst in einem konstruktor mit den Werten initialisieren.
Da müsste ich jetzt wohl oder übel in der klasse eine Feste Größe
festlegen oder=?private: double dreieck_xpos[10]und im Konstruktor sagen
[/code]
dreieck_xpos[0]= 100;
dreieck_xpos[1]= 200;
.
.
.
[/code]ich hab schon versucht das irgendwie auch mit { ...} wie bei der deklaration hinzukriegen aber das geht offenbar nicht?
Meine Frage ist eigentlich wie man nun am komfortabelsten große arrays zur laufzeit initialisiert...
-
Ja, das geht leider nicht
Was aber noch halbwegs bequem ist:// Datei.cpp #include "Datei.h" const double dreieck_xpos_global[]= { 100,200,160,260,200,250,600,350,400,500 }; XXX::XXX() { memcpy( dreieck_xpos, dreieck_xpos_global, sizeof(dreieck_xpos_global) ); } // Datei.h class XXX { public: XXX(); // Konstruktor private: double dreieck_xpos[10]; };Damit ersparst du dir den Schreibaufwand, jedes einzelne Feld explizit zuweisen zu müssen
