Come sovraccarico un puntatore in C ++

April 5

Come sovraccarico un puntatore in C ++


In ogni linguaggio di programmazione, il linguaggio permette di sovraccaricare un operatore già predefinito all'interno del compilatore. L'overloading degli operatori è, in poche parole, ridefinendo quello che un operatore fa. Un esempio potrebbe essere sovraccaricare il più segno "+" e invece definirlo restituire la differenza dei due valori anziché somma. Ridefinendo ciò che il segno più lo fa, si è sovraccaricato l'operatore in un linguaggio di programmazione. La maggior parte delle lingue hanno puntatori, che in sostanza è una locazione di memoria che punta al valore effettivo piuttosto che mantenere il valore in quella posizione memoria stessa.

istruzione

1 Definire la funzione di sovraccaricare l'operatore. Le definizioni sono fatte nel file di intestazione ".h". Quando si dichiara l'oggetto di classe, si dichiara tutte le funzioni della classe. Se si esegue l'overload di un operatore, si dichiara che la funzione qui. In C ++, ad esempio:

MyClassObject operator -> (const MyClassObject & classObject)

2 Definire la funzione dell'operatore sovraccarico. Questo viene fatto nel file sorgente "cpp". Dopo aver dichiarato una funzione in un file di intestazione, è necessario dichiarare la funzione nel file di origine. Questo dice il programma di che cosa fare quando si chiama quella funzione. In C ++, ad esempio:

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

tornare MyClassObject (* this);

}

3 Utilizzare il puntatore nel codice. Dopo aver sovraccaricato all'operatore di fare ciò che si desidera, è possibile utilizzare l'operatore in codice. Il passo precedente mostra all'operatore funziona come un normale operatore. Tuttavia, se si fosse sovraccaricato il "->" operatore di fare una somma, è possibile digitare 3 -> 4 nel vostro programma e ottenere un valore risultante di 7.