Makro-expansion
-
Servus,
ich hab seit Jahren keine Makros mehr gebraucht. Jetzt brauch ich welche, um folgenden Code zu generieren:
object1_bla = init("object1_blub"); object2_bla = init("object2_blub");
Das Makro tut's jedenfalls nicht:
#define INIT(X) objectX_bla = init("objectX_blub"); INIT(1)
ergibt
objectX_bla was not declared in this scope
Wie geht das?
Gruß,
Philipp
-
Erste Hürde genommen: Die Variablennamen erzeuge ich mir mit:
#define INIT(X) object ## X ## _bla = init("objectX_blub");
Jetzt stimmt nur der String in den Quotes noch nicht. Wie geht das?
-
init("object" #X "_blub");
-
Dankeschön, so hatte ich mir das vorgestellt