Le titre est un peu abstrait mais comme je ne suis pas sp�cialiste des macro je ne suis pas sur de comment proc�der.
Je voudrais savoir si il y a un moyen d'�crire une fonction macro prenant un paramettre qui sera utilis� pour g�n�rer un nom de macro et d�finir la valeur d'une autre d�finition macro.
Quelque chose qui ressemblerait � �a (sauf que ce code ci n'a pas le sens que je veux):
Je ne vois pas de fa�ons de le faire.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6 #define GENERATE_MODULE_API( module_api_macro_name ) \ #ifdef module_api_macro_name##_EXPORTS \ #define module_api_macro_name##_API My_DllExport \ #else \ #define module_api_macro_name##_API My_DllImport \ #endif
Ce que j'aimerai faire c'est que chacun de mes projets DLL/SO puisse automatiquement g�n�rer une macro MON_MODULE_API qui serait l'�quivalent de ceci:
Actuellement je dois faire un header par projet qui doit contenir ce code ci dessus (avec le nom du projet chang� � chaque fois).
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7 #ifdef MONPROJET_SYSTEM_EXPORTS #define MONPROJET_SYSTEM_API My_DllExport #else #define MONPROJET_SYSTEM_API My_DllImport #endif #endif
Si vous avez une mani�re de le faire plus g�n�rique, je suis preneur.
Partager