Questions marquées «c-preprocessor»

112
#ifdef vs #if - quelle méthode est la meilleure / la plus sûre pour activer / désactiver la compilation de sections particulières de code?

C'est peut-être une question de style, mais il y a un peu de division dans notre équipe de développement et je me suis demandé si quelqu'un d'autre avait des idées à ce sujet ... Fondamentalement, nous avons des instructions d'impression de débogage que nous désactivons pendant le développement...

110
Numéro de ligne C / C ++

Dans un souci de débogage, puis-je obtenir le numéro de ligne dans les compilateurs C / C ++? (méthode standard ou méthodes spécifiques pour certains compilateurs) par exemple if(!Logical) printf("Not logical value at line number %d \n",LineNumber); // How to get LineNumber without writing it by my...

104
Virgule dans une macro C / C ++

Disons que nous avons une macro comme celle-ci #define FOO(type,name) type name Que nous pourrions utiliser comme FOO(int, int_var); Mais pas toujours aussi simplement que ça: FOO(std::map<int, int>, map_var); // error: macro "FOO" passed 3 arguments, but takes just 2 Bien sûr, nous pourrions...

101
Macro vs fonction en C

J'ai toujours vu des exemples et des cas où l'utilisation d'une macro est meilleure que l'utilisation d'une fonction. Quelqu'un pourrait-il m'expliquer avec un exemple l'inconvénient d'une macro par rapport à une

99
Pragma dans définir la macro

Existe-t-il un moyen d'intégrer une instruction pragma dans une macro avec d'autres instructions? J'essaye de réaliser quelque chose comme: #define DEFINE_DELETE_OBJECT(type) \ void delete_ ## type_(int handle); \ void delete_ ## type(int handle); \ #pragma weak delete_ ## type_ = delete_ ## type...