J'essaie d'écrire une macro qui développera la macro __COUNTER__
une seule fois par fichier source. Je comprends parfaitement comment les macros fonctionnent avec leur expansion mais j'ai du mal avec celui-ci. Je veux développer la macro __COUNTER__
une fois en haut du fichier, puis chaque référence à cette définition ne développera pas le __COUNTER__
à son prochain numéro.Développez la macro __COUNTER__ une fois par fichier source
Je souhaite donc développer entièrement __COUNTER__
en une seule valeur, puis utiliser cette valeur uniformément dans le fichier source en cours. Je ne peux utiliser que les fonctions disponibles pour C.
Métaprogrammation de modèle, vous pouvez "générer" des ID exécutant du code au moment de la compilation. –
Je suis limité à utiliser uniquement C donc cette solution doit être sur le préprocesseur –
La valeur doit-elle être disponible au moment de la compilation? Ou peut-il attendre jusqu'à l'exécution? –