Я пытаюсь перебрать данные, содержащиеся в каждом узле, в списке с именем _snakeSegments. (примечание: занятия были написаны мной и не являются частью STL). Каждый элемент данных - это спрайт, представляющий один сегмент моей змеи.
Я получаю следующую ошибку при попытке компиляции: request for member 'GetPrev' in 'currentNode', which is of non-class type 'Node<Sprite>*'
. Скомпилированный пометил строку, где я пытаюсь назначить следующий currentNode в цикле for ниже:
void Snake::Draw(prg::Canvas& c)
{
Node<Sprite>* currentNode = _snakeSegments.GetHead();
for (int i=0; i < _snakeSegments.NumberOfNodes(); ++i){
currentNode->GetData().Draw(c);
currentNode = currentNode.GetPrev(); //compiler shows error here
}
}
Вот определение GetPrev. Который при вызове узла возвращает указатель узла на предыдущий узел ..
template <typename NodeType>
Node<NodeType>* Node<NodeType>::GetPrev()
{
return _prev;
}
Ну, я немного запутался и был бы признателен за любую помощь! Пожалуйста, спросите, если вам нужна дополнительная информация / мне неясно, спасибо.