2012-04-28 2 views
0

Я делаю программу для управления бинарных деревьев, но у меня есть проблема здесь:C++ указатель эталонный метод вызова

void Arbol :: insertar(Nodo*& p, float clave) 
{ 
    if(p == NULL){ 
     p = new Nodo(clave); 
    }else if(clave < p->getclave()){ 
     insertar(p->getsubarbol_izq(), clave); 
    }else{ 
     insertar(p->getsubarbol_der(), clave); 
    } 
} 

Nodo * & является ссылкой указателя в каждом узле (NODO) в дерево (Арбол).

p-> getsubarbol_der() возвращает указатель на nodo (nodo *).

Но у меня есть эта ошибка при вызове метода insertar класса Arbol: ошибка: нет соответствующей функции для вызова «Arbol :: insertar (Nodo *, float &) '|

ответ

3

Я думаю, что основная проблема заключается в том, что p->getsubarbol_der() возвращает временное, и вы пытаетесь передать это временное значение по ссылке const в insertar().

Смежные вопросы