lokales Array und Zuweisung im Konstruktor
-
Hallo,
Ich habe eine Klasse, in der ich in der Headerdatei ein statisches Array deklariere:class CClass { public: CClass(); ~CClass(); private: int Array[4]; }Ich möchte jetzt dem Array im Konstruktor seine Werte zuweisen, und das soll ziemlich kompakt sein. Ich dachte an sowas:
Array = {2, 4, 3, 6};Aber das geht nur, wenn ich das Array direkt hier deklariere:
int Array[4] = {2, 4, 3, 6};Warum ich das will, liegt daran, dass das Array statt einer Größe von 4 tatsächlich ne Größe von 256 hat und ich nicht schreiben möchte Array[0] =... bis Array[256] =... - das ist mir zuviel Code. Wäre ja viel kompakter wenn ich das in die geschweiften Klammern setze.
Geht das irgendwie?Danke
Norman
-
Ich schätze es hat sich erledigt, hab ne Lösung gefunden:
class CClass { public: CClass(); ~CClass(); private: int m_Array[4]; }; CClass::CClass() { int Array[4] = {2, 4, 3, 6}; for (int i = 0; i < 4; i++) m_Array[i] = Array[i]; }
-
Wenn das Array statisch ist, gibt es eine bessere Lösung:
class Class { static int m_Array[4]; }; int Class::m_Array[4] = {1, 2, 3, 4};