Können Operatoren für intrinsische Typen überladen werden?
In C ist es möglich, Operatoren für benutzerdefinierte Typen zu überladen. Allerdings sind die intrinsischen Typen wie int und float nicht benutzerdefiniert, daher stellt sich die Frage: Können ihre Operatoren überladen werden?
Wie in der bereitgestellten Antwort angegeben, ist es nicht möglich, integrierte Operatoren neu zu definieren . Das Überladen von Operatoren ist ein Mechanismus, der es Entwicklern ermöglicht, die Sprache zu erweitern, indem sie benutzerdefiniertes Verhalten für Operatoren im Kontext ihrer eigenen Typen definieren. Diese Funktion wurde entwickelt, um die Ausdruckskraft und Erweiterbarkeit der Sprache zu verbessern, ohne ihre Kernfunktionalität zu ändern.
Daher muss mindestens einer der Parameter eines überladenen Operators ein benutzerdefinierter Typ (eine Klasse oder eine Aufzählung) sein ) oder ein Verweis auf einen solchen Typ. Intrinsische Typen wie int und float fallen nicht in diese Kategorie und können daher nicht als Parameter bei der Operatorüberladung verwendet werden. Folglich können Sie keine Funktion wie den int-Operator (int, int) deklarieren; in C .
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3