Возможное дублирование:
LinkedList «переход по узлу»
Мне просто нужен связанный список по именам. Я могу получить его только до 1-го, 3-го, 5-го, .. узлов. Я просто не могу так далеко думать. Я хочу быть программистом на C ++, но если я не понимаю, на что они надеются? Контейнеры STL std::lists не подходят для меня как студента. Я пытаюсь понять то, что вы видите в функции списка.
list::node::node(const winery &winery) : item( winery.getName(), winery.getLocation(),
winery.getAcres(), winery.getRating() ), nextByName( NULL ), nextByRating( NULL )
{
}
void list::insert(const winery& winery)
{
node *current_node = new node( winery ); // but came here and did this so it has new info!
node *next_node = NULL;
node *tail_node = current_node;
if ( headByName == NULL ) // then we are here for the first item
{
headByName = current_node; // the list ptrs will have the first node's address.
headByRating = current_node;
}
while ( headByName->nextByName != NULL )
{
headByName->nextByName = tail_node;
tail_node = next_node;
//next_node = current_node;
}
tail_node = new node( winery );
headByName->nextByName = tail_node;
}
И указатели, которые мне доступны:
struct node
{
winery item;
node * nextByName;
node * nextByRating;
};
class list
{
...
private:
node * headByName;
node * headByRating;
};