может показаться, что вы пытаетесь внедрить «связанный список»
Структура связанной - это следующая и предыдущая «точки» (*), а на самом деле это не другой узел, как утверждает Андре.
http://www.cplusplus.com/doc/tutorial/pointers/ может помочь уточнить.
class LinearNode
{
//...snip
//returns the next node in the set.
LinearNode* getNext();
//returns the previous node in the set
LinearNode* getPrevious();
//...snip
private:
LinearNode * next;
LinearNode * previous;
};
Итак, в файле реализации:
//returns the next element in the structure
LinearNode* LinearNode::getNext()
{
return next; // now a poiner
}//ends getNext function
//returns previous element in structure
LinearNode* LinearNode::getPrevious()
{
return previous; // now a poiner
}//ends getPrevious function
//sets the next variable for the node
void LinearNode::setNext(LinearNode* node) //pointer in, void out
{
next = node
}//ends the setNext function
//sets previous for the node
void LinearNode::setPrevious(LinearNode* node)//pointer in, void out
{
previous = node;
}//ends the setPrevious function
, поэтому main выглядит так:
int main()
{
LinearNode node1, node2, move;
node1.setElement(1);
node2.setElement(2);
node2.setNext(&node1); // give the address of node to the next pointer (&)
node1.setPrevious(&node2); // give the address of node to the next pointer (&)
move = node2;
while(move.getNext() != NULL)
cout << move.getElement() << endl;
}
Я не знаю, что пытается сделать цикл while!если - возможно?
Кроме того, как заявляет Никламорт, все функции вашего класса должны иметь возвращаемый тип, кроме случая void.