Мне нужен метод ниже, чтобы вернуть абстрактный тип ALMObjectC
Однако я обнаружил, что это можно сделать только через указатель; но когда я объявляю это, компилятор заявляет:
Error: no suitable conversion function from "ALMObjectC" to "ALMObjectC*" exists.
Итак, как я могу решить эту проблему?
Ниже приведен метод, о котором идет речь:
ALMObjectC* AlmRESTC::findChild(int ref){
//objectSet(ref) => ALMObjectC
for(list<ALMObjectC>::iterator cons = objectSet.begin(); (cons != objectSet.end()); cons++){
if (distance(objectSet.begin(), cons) == ref)
return *cons;
}
}
*cons
даст вам объект, который вы сохранили, который имеет тип ALMObjectC
, если вы хотите вернуть адрес этого объекта, вы должны сделать
return &(*cons)
Других решений пока нет …