2013-03-03 2 views
1

Я пишу простой (очень простой) список, чтобы освежить мои навыки программирования, но, судя по всему, я не сработал с тех пор, как получил эту ошибку компилятора, и я не могу понять, что случилось. Проблема заключается в функции удаления:ожидаемый неквалифицированный идентификатор перед функцией bool?

bool delete(node* head, node* delMe){ 
    node* current; 

    if(delMe == head){ 
      if(head->next != NULL){ 
        head = delMe->next; 
        free(delMe); 
      }else{ 
        head = NULL; 
        cout<<"There are no more elements in the LL"<<endl; 
      } 
      return true; 
    }else{ 
      current = head; 
      while(current){ 
        if(current->next == delMe){ 
          current->next = delMe->next; 
          free(delMe); 
          return true; 
        } 
        current = current->next; 
      } 

    } 
    return false; 
    } 

Я получаю ожидаемый неквалифицированный идентификатор до «delete».

Я думал, что это может быть что-то с функцией вставки над ним, но когда я вообще замечаю функцию удаления, программа компилируется без проблем.

+3

Измените имя функции. –

+0

Предпочитаете 'new/delete'' 'malloc/free' в C++ (и только когда вам нужно * вручную управлять им). – chris

ответ

1

delete - ключевое слово в C++. Вы не можете использовать его как идентификатор.

+0

Благодарим за помощь! Это помогло включить подсветку синтаксиса, так что я мог это видеть. Ха-ха. – cooper

Смежные вопросы