Maison >développement back-end >C++ >Pouvez-vous surcharger les opérateurs pour les types intégrés comme int et float en C ?

Pouvez-vous surcharger les opérateurs pour les types intégrés comme int et float en C ?

Patricia Arquette
Patricia Arquetteoriginal
2024-10-31 06:39:301001parcourir

Can You Overload Operators for Built-in Types like int and float in C  ?

Surcharge des opérateurs en C

En C, il est possible de redéfinir les opérateurs pour modifier leur comportement avec des types personnalisés. Cependant, une question courante se pose :

Pouvons-nous surcharger les opérateurs pour les types numériques intégrés comme int ou float ?

La réponse est non .

La surcharge des opérateurs permet l'extension du langage mais pas la modification des types intégrés existants. Pour surcharger un opérateur, au moins un paramètre doit être d'un type défini par l'utilisateur ou une référence à celui-ci.

Dans l'exemple fourni :

<code class="cpp">int operator + (int, int);</code>

Les deux paramètres sont du type intégré. en type int. Puisqu'aucun type défini par l'utilisateur n'est impliqué, cette déclaration d'opérateur n'est pas valide.

Par conséquent, il n'est pas possible de surcharger les opérateurs pour les types fondamentaux comme int ou float en 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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn