Petite astuce pour commenter du code ayant déjà des commentaires

baduit

Lena

Posted on February 4, 2022

Petite astuce pour commenter du code ayant déjà des commentaires

Contexte

Imaginez-vous en train de débugger votre programme : soudainement, vous voyez une fonction avec une partie de son contenu qui vous semble étrange. Vous vous dites que cela pourrait être intéressant de voir le comportement de votre programme sans ce bout de code.

Vous essayez donc de le mettre en commentaire (avec le raccourci de votre éditeur préféré, qui met automatiquement les caractères /* */, et là, vous remarquez dépité que seul le début de l'extrait de code a été commenté car il y a déjà des commentaires multilignes (utilisant /* */).

Vous êtes bien embêté, mais vous avez plusieurs solutions en tête, plus ou moins pratiques, pour palier ce problème. Supprimer le code, utiliser des commentaires mono-lignes ou bien mettre un if (false) {}, par exemple. Je vais vous parler d’une autre technique toute simple.

L'astuce

Il vous suffit de mettre le code que vous souhaitez commenter entre un #if 0 et le #endif correspondant.

Voici un exemple :

int big_and_ugly_function(int cost, const std::string& name)
{
    apply_margin(cost);

    #if 0
    /* Best comment ever ! */
    std::cout << "Hi: " << name << std::endl;
    apply_reduction(cost, name);

    /* Usefull comment. */
    apply_taxes(cost);

    /* This comment is blowing your mind. */
    std::cout << "The cost is: " << cost << std::endl;
    #endif

    return cost;
}
Enter fullscreen mode Exit fullscreen mode

Si jamais vous voulez décommenter temporairement le code, il suffira de remplacer le #if 0 par #if 1 comme ceci :

int big_and_ugly_function(int cost, const std::string& name)
{
    apply_margin(cost);

    #if 1
    /* Best comment ever ! */
    std::cout << "Hi: " << name << std::endl;
    apply_reduction(cost, name);

    /* Usefull comment. */
    apply_taxes(cost);

    /* This comment is blowing your mind. */
    std::cout << "The cost is: " << cost << std::endl;
    #endif

    return cost;
}
Enter fullscreen mode Exit fullscreen mode

Voilà, c’est tout pour cette astuce ! Il est probable que vous la connaissiez déjà, si vous avez un peu d’expérience, mais une piqûre de rappel ne fait pas de mal !

💖 💪 🙅 🚩
baduit
Lena

Posted on February 4, 2022

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related