recherche

Maison  >  Questions et réponses  >  le corps du texte

Pourquoi est-il recommandé de donner la priorité aux constantes dans les instructions « if » ?

Je regardais un exemple de code C++ pour une interface matérielle que j'utilise et j'ai remarqué de nombreuses déclarations similaires à :

if ( NULL == pMsg ) return rv;

Je suis sûr d'avoir entendu des gens dire que mettre la constante en premier est une bonne idée, mais pourquoi ? Est-ce juste pour que vous puissiez voir rapidement ce que vous comparez si vous avez une déclaration importante ou y a-t-il plus à faire ?

P粉066224086P粉066224086285 Il y a quelques jours513

répondre à tous(2)je répondrai

  • P粉226667290

    P粉2266672902024-03-26 12:47:56

    Vous empêcher d'écrire :

    if ( pMsg = NULL ) return rv;

    Touché par accident. Cependant, un bon compilateur vous en avertira, donc la plupart des gens n'utiliseront pas la méthode "const-first" car ils ont du mal à lire.

    répondre
    0
  • P粉180844619

    P粉1808446192024-03-26 09:11:54

    De cette façon, il n'y a pas de confusion entre comparaison (==) et affectation (=).

    Comme vous le savez, vous ne pouvez pas attribuer une constante. Si vous essayez, le compilateur vous donnera une erreur.

    Fondamentalement, il s'agit d'une technique de programmation défensive. Pour vous protéger de vous-même.

    répondre
    0
  • Annulerrépondre