Ist es möglich, Operatoren (wie Vergleichsoperatoren) in C zu überladen?
Wenn ja, wie machst du das? Ich habe eine schnelle Suche gemacht, aber alles, was ich gefunden habe, war für C ++, und was ich will, ist für C.
Hat jemand Ideen?
Edit1: Die Idee ist: Ich habe eine Struktur, und ich muss einen Vergleich (basierend auf einem Mitglied der Struktur). Und dazu möchte ich Operatoren mit meinem neuen "Datentyp" vergleichen.
Edit2: Ich bin mir vollkommen bewusst, dass ich auf die Verwendung von Operatorüberladung verzichten kann, habe mich aber gefragt, ob Sie das mit OVERLOAD machen können.
Antwort: Das Konzept der Überlastung ist mit der objektorientierten Programmierung verbunden. Da C nicht objektorientiert ist und daher kein Überlastungskonzept enthalten kann. (:
Wenn Sie unter Überlastung Benutzerüberlastungen durch den Benutzer verstehen, lautet die Antwort nein. Einige der vordefinierten Operatoren wie *
, +
usw. sind jedoch (wenn Sie darüber nachdenken) für arithmetische Typen überladen. Das *
ist speziell, da es auch eine Überladung für das Verweisen auf Zeiger hat.
Tags und Links c override overloading