Creando recorridos para el árbol de búsqueda binaria con recursión.
void inOrder(void (*inOrderPtr)(T&))
{
if(this->left != NULL)
inOrder((*inOrderPtr)(this->left));
inOrderPtr(this->data);
if(this->right != NULL)
inOrder((*inOrderPtr)(this->right));
}
Aquí está la función. Ahora esto es obviamente incorrecto. Esta función se llama así:
first.inOrder(print_vals);
primero está el objeto, y print vals es simplemente una función que imprime lo que son los datos en el objeto. Hay tres valores para cada objeto, datos, izquierda y derecha. ¿Cómo accedo a esos elementos con la función?













