Creazione di Attraversamento di Binary Search Tree with ricorsione.
void inOrder(void (*inOrderPtr)(T&))
{
if(this->left != NULL)
inOrder((*inOrderPtr)(this->left));
inOrderPtr(this->data);
if(this->right != NULL)
inOrder((*inOrderPtr)(this->right));
}
Ecco la funzione. Ora, questo è ovviamente sbagliato. Questa funzione viene chiamata in questo modo:
first.inOrder(print_vals);
primo è l'oggetto, e vals stampa è semplicemente una funzione che stampa ciò che è i dati nell'oggetto. Ci sono tre valori per ogni oggetto, di dati, di sinistra e destra. Come posso effettivamente accedere a tali elementi con la funzione?













