Array von Structs initialisieren
-
Ich habe ein Array von Structs und möchte das mit Konstanten initialisieren.
struct Fehlermapping { HRESULT hr; const CString Fehlermeldung; }; const CString err1 = "schwerer Fehler"; const CString err2 = "mittlerer Fehler"; const CString err3 = "kleiner Fehler"; Fehlermapping Fehlermappings[] = { (-1, err1), (-2, err2), (-3, err3), };Compilermeldung:
error C2440: 'initializing' : cannot convert from 'const class CString' to 'struct Fehlermapping'Ich habs auch mit geschweiften Klammern probiert
Compilermeldung:
error C2440: 'initializing' : cannot convert from 'const int' to 'struct Fehlermapping
error C2440: 'initializing' : cannot convert from 'const class CString' to 'struct Fehlermapping'
-
IIRC:
Fehlermapping Fehlermappings[] = { {-1, err1}, {-2, err2}, {-3, err3}, };
-
#include <string> using namespace std; struct fehler { fehler(int i, const string& s) : i_(i), s_(s) { } int i_; const string s_; }; int main() { string a("a"), b("b"), c("c"); fehler f[] = { fehler(-1, c), fehler(-2, b), fehler(-3, a) }; return 0; }mfg