2013-09-19 6 views
-1

Я получаю сообщение об ошибке с кодомC++: error: expected ';' до того '<' лексема

error: using-declaration for non-member at class scope" 
error: expected ';' before '<' token 

C++ С помощью этого кода:

struct Entry { 
    char* word; 
    char* def; 
} 

class Dictionary { 
    public: 
    Dictionary(); 
    ~Dictionary(); 
    void addEntry(Entry*); 
    char* getDef(const char*); 

    private: 
    std::vector<Entry> dict;  //Error happens here 
} 

Что означает эта ошибка?

+0

вы забыли точку с запятой. struct Entry { char * word; char * def; }; и после класса {}; – JNL

ответ

7

Вы забыли некоторую запятую:

struct Entry { 
    char* word; 
    char* def; 
};    //C++ structs need a semicolon after the curly brace. 


class Dictionary { 
    public: 
    Dictionary(); 
    ~Dictionary(); 
    void addEntry(Entry*); 
    char* getDef(const char*); 

    private: 
    std::vector<Entry> dict;  

}; 
+0

Проклятье. Я всегда забываю, какой тип фигурных фигурных скобок требует полу-двоеточие. –

+0

Я все еще получаю сообщение об ошибке после того, как добавил соответствующие точки с запятой .... –

+0

Не с кодом, который вы отправили. Должно быть что-то еще, вызывающее ошибку. –

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