C++ structs definiert im header und umgesetzt cpp

Wie kann ich sicherstellen, dass das somecolor, die ich umsetzen behält seinen Wert, wenn Sie es in einer anderen Klasse?

struct.h

struct Color{
   unsigned char r;
   unsigned char g;
   unsigned char b;
};
Color someColor;
//if i define the color here it says...:
Color someColor = {255,255,255}; //error: data member inializer not allowed

struct.cpp

struct::Color someColor = {255,255,255};

someotherclass.cpp

struct *str = new struct();
str->someColor.r //is not the correct value /not set
Bitte zeigen Sie echten code. Man kann nicht ein struct genannt struct.
Ausgehend von der letzten Zeile, ich denke, uns fehlt die wichtige information, dass someColor ist ein Mitglied einer Klasse, nicht um eine Globale variable. Um die Frage zu beantworten, müssen wir wissen, (a) wenn das tatsächlich der Fall ist; und (b) ob es es sollte nur eine Instanz von Ihr im Zusammenhang mit der Klasse selbst (static-member) oder mit jedem Objekt einzeln (eine nicht-statische member).

InformationsquelleAutor Sebastiaan van Dorst | 2013-04-03

Schreibe einen Kommentar