En supposant que votre compilateur C++ les supporte, y a-t-il une raison particulière pas à utiliser __FILE__
, __LINE__
y __FUNCTION__
à des fins de journalisation et de débogage ?
Je suis surtout préoccupé par le fait de donner à l'utilisateur des données trompeuses - par exemple, signaler le mauvais numéro de ligne ou la mauvaise fonction à la suite de l'optimisation - ou de subir une baisse de performance en conséquence.
En gros, est-ce que je peux faire confiance __FILE__
, __LINE__
y __FUNCTION__
a toujours faire ce qu'il faut ?
0 votes
LIGNE devrait faire ce qu'il faut. Je l'ai largement utilisé, ainsi que ses cohortes, notamment pour JOLIE_FONCTION . ... Mais ... eh bien, je suis juste en train de regarder un code où LIGNE mensonges. Probablement parce qu'il se trouve dans un bloc catch pour la gestion des exceptions try/catch.
4 votes
Pertinent : référence gcc pour les macros prédéfinies