Mi piacerebbe ottenere il preprocessore C per generare macro (ad esempio, sto utilizzando solo C99). Mi piacerebbe scrivere una macroMacro di produzione di macro in C?
#define make_macro(in) <...magic here...>
e quando ho messo
make_macro(name1)
make_macro(name2)
avanti nel codice, si espanderebbe a
#define name1(...) name1_fn(name1_info, __VA_ARGS__)
#define name2(...) name2_fn(name2_info, __VA_ARGS__)
e sarei quindi in grado di utilizzare nome1 e name2 come funzioni (implementate macro). Penso di essere bloccato usando le macro in entrambi i passaggi: ha senso usare una macro per riempire ripetutamente un modello, e la gestione degli argomenti variadici non funzionerà se non tramite una macro.
Quindi cosa va nella < ... magia qui ...> segnaposto per fare questo? A questo punto, sto iniziando a credere che non sia possibile in C99, ma forse mi mancano alcuni dettagli di sintassi.
perché una macro? non ottengo questo punto "per riempire ripetutamente un modello". quale modello e quale ricarica? –