Wie einen Zeiger in C++ überladen

April 25

Wie einen Zeiger in C++ überladen

In jeder Programmiersprache können die Sprache Sie einen bereits vordefinierten innerhalb der Compiler Operator überladen. Überladen ist, einfach ausgedrückt, neu zu definieren, was tut ein Operator. Ein Beispiel wäre zu überladen das Pluszeichen "+" unterzeichnen und stattdessen definieren sie um die Differenz der beiden Werte statt der Summe zurückzugeben. Indem Sie neu, was bedeutet das Plus-Zeichen, haben Sie den Operator in einer Programmiersprache überladen. Die meisten Sprachen haben Zeigern, die im Wesentlichen eine Position im Speicher, die auf den tatsächlichen Wert, anstatt den Wert in diesem Speicherbereich selbst halten zeigt.

Anweisungen

1 Definieren Sie die Funktion, um den Operator zu überladen. Definitionen werden in der "h"-Header-Datei vorgenommen. Wenn Sie Ihr Objekt der Klasse deklarieren, werden Sie alle Funktionen der Klasse deklarieren. Wenn Sie einen Operator überladen, werden Sie diese Funktion hier deklarieren. In C++ zum Beispiel:

MyClassObject Halter->(const MyClassObject &classObject)

2 Definieren Sie der überladene Operator-Funktion. Dies geschieht in der Quelldatei ".cpp". Nachdem Sie eine Funktion in einer Headerdatei deklariert haben, müssen Sie die Funktion in der Quelldatei zu deklarieren. Dies sagt Ihr Programm was tun, wenn Sie diese Funktion aufrufen. In C++ zum Beispiel:

MyClassObject MyClassObject::operator->(const MyClassObject &classObject) {}

Rückkehr MyClassObject(*this);

}

3 Verwenden Sie den Zeiger im Code. Nachdem Sie überladen, haben die Betreiber zu tun, was Sie wünschen, können Sie den Operator im Code verwenden. Vorherige Schritt zeigt den Operator als ein normaler Operator funktioniert. Jedoch wenn Sie den Operator "->", um eine Summe zu tun überladen hatte, Sie könnten Typ 3 -> 4 in Ihrem Programm und den resultierenden Wert 7 zu erhalten.