Quand utiliser la surcharge de l'opérateur virgule
Bien que la surcharge de l'opérateur virgule ne soit pas fréquemment abordée en C, les idées fausses qui l'entourent ont soulevé la question de ses applications pratiques.
Cas d'utilisation appropriés
Une situation dans laquelle la surcharge des opérateurs virgules s'avère utile est celle où l'on travaille avec des cartes qui nécessitent plusieurs index. Prenons l'exemple suivant :
<code class="c++">enum Place {new_york, washington, ...}; pair<Place, Place> operator , (Place p1, Place p2) { return make_pair(p1, p2); } map< pair<Place, Place>, double> distance; distance[new_york, washington] = 100;</code>
Dans ce scénario, l'opérateur virgule surchargé permet une indexation pratique de la carte à l'aide de deux valeurs. La paire construite est ensuite utilisée comme clé de mappage.
Remarque : Il convient de mentionner que la surcharge de l'opérateur virgule sans parenthèses est obsolète à partir de C 20 et supprimée en C 23. Par conséquent, il est indispensable de le mettre entre parenthèses pour assurer la compatibilité avec les dernières versions C.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!