Возникла проблема. Необходимо написать функции вставки/удаления элемента в связном списке, следующего после элемента с номером n. Чтобы это организовать необходимо перегрузить операцию []. Написанный мной кусок конечно же зависает. Но где ошибки?
elem operator[](int n)
{
elem *p; /* elem - структура */
p = first; /* first - указатель на начало списка */
for(int i = 0; i < n; i++)
{
if(p == NULL)
{ printf(«нет такого элемента\n»);
} else {
while(p != NULL) {
p = p->link;
}
}
}
return *p;
};