Skip to main content

Qu'est-ce que la surcharge de l'opérateur?

La surcharge de l'opérateur est une fonctionnalité de langage de programmation informatique qui permet à un programmeur de remplacer un opérateur par défaut.Lorsque la fonction de l'opérateur est surchargée, elle peut être déclarée avec des arguments personnalisés qui sont différents types de données de ce que l'opérateur était capable de gérer par défaut.Les nouveaux paramètres peuvent être des types primitifs ou définis par l'utilisateur.Dans le corps de la fonction primordiale, un programmeur peut manipuler les valeurs des paramètres comme souhaité.En utilisant la surcharge de l'opérateur, un programmeur peut créer des raccourcis intuitifs pour manipuler les types de données définis par l'utilisateur ou modifier la façon dont les types de données par défaut sont gérés.

Lorsque les types de données définis par l'utilisateur sont créés, il n'y a aucun moyen de effectuer des tâches opérationnelles simples, comme en ajoutant deuxd'entre eux ensemble ou incrément les données internes en utilisant l'opérateur d'incrément unaire avec le type de données.Les opérateurs, y compris le symbole d'addition, peuvent être remplacés afin que s'ils sont utilisés comme opérateurs binaires entre deux types de données personnalisés, ils renvoient un résultat défini par l'utilisateur.De la même manière, un opérateur unaire, comme l'opérateur d'incrémentification, pourrait être remplacé pour augmenter une valeur interne au sein du type défini par l'utilisateur.

Une fois qu'un opérateur est surchargé, le compilateur doit prendre une décision sur ce qu'il faut faire lorsqu'il rencontreun opérateur surchargé.Le compilateur décide de l'action appropriée à prendre en fonction des types de données utilisés comme opérandes, ou en conjonction avec l'opérateur.Si les opérandes, qui sont des valeurs de paramètres à la fonction de l'opérateur, sont des types de données définies par l'utilisateur, le compilateur choisira la fonction surchargée qui a des paramètres qui correspondent aux opérandes utilisés.

Les langages de l'ordinateur varient dans la façon dont ils permettent à ce type de publicitépolymorphisme hoc.Différentes langues peuvent permettre la création de nouveaux opérateurs personnalisés, la surcharge de tous ou certains de ses opérateurs, ou ne permettent pas du tout la surcharge des opérateurs.C ++, C #, PHP et Perl permettent à certains de leurs opérateurs d'être surchargés.La surcharge de l'opérateur n'est pas autorisée dans C, Java et JavaScript.

La surcharge de l'opérateur et la surcharge de fonctions en général ont fait l'objet d'un débat.Certains affirment que donner au programmeur la liberté de changer la façon dont un opérateur se comporte pourrait introduire le potentiel de création d'erreurs involontaires par d'autres programmeurs qui utilisent le code personnalisé.Le point de vue opposé propose que l'autorisation de surcharge de l'opérateur donne aux programmeurs la capacité de créer un code intuitif et concis qui sera plus facile à comprendre, coûte moins cher à produire et à réduire les erreurs.