Hallo!
Per Build-Option möchte ich eine Struktur unterschiedlich initialisieren
und diese ineinander verschachteln.
Dummycode:
1
#define INIT_VALUE {a, b}, \
2
{c, d}, \
3
#if SUPPORT
4
{e,f}, \
5
#endif/* SUPPORT */
6
#if OPTION
7
{g,h}, \
8
#ifUSE_ALSO
9
{i,j}, \
10
11
#endif /* USE_ALSO */
12
#endif /* OPTION */
13
{k,l}
14
/* INIT_VALUE END */
15
16
17
structMyStructdata={INIT_VALUE};
Aber das Verschachteln funktioniert aufgrund der Definition über mehrere
Zeilen nicht.
Die Frage ist, wie bekommt man das schön gelöst?
Große #if Optionen aufbauen, indem INIT_VALUE vollständig definiert ist,
ist doof und erhöht den Pflegeaufwand, wenn ich z.B. Standardmäßig (zu
Beginn) eine weitere Einstellung unterstützen möchte.
Sowas hier finde ich grauenhaft!
[c]
#if OPTION
#if SUPPORT
#if USE_ALSO
...
#endif /* USE_ALSO */
#else /* SUPPORT */
#if USE_ALSO
...
#endif /* USE_ALSO */
#endif /* SUPPORT */
#else /* OPTION */
....
#endif /* OPTION */
Danke für eure Hilfe.
Grüße
Turf