2012-04-13 16 views
24

Dostaję błąd "error: oczekuje bezwarunkowego-id before '{' żeton" na linii 6.C++ błąd: oczekiwano niewykwalifikowany-id

Nie mogę powiedzieć, co się stało.

#include <iostream> 

using namespace std; 

class WordGame; 
{ 
public: 

    void setWord(string word) 
    { 
     theWord = word; 
    } 
    string getWord() 
    { 
     return theWord; 
    } 
    void displayWord() 
    { 
     cout << "Your word is " << getWord() << endl; 
    } 
private: 
    string theWord; 
} 


int main() 
{ 
    string aWord; 
    WordGame theGame; 
    cin >> aWord; 
    theGame.setWord(aWord); 
    theGame.displaymessage(); 

} 

Odpowiedz

21

Nie powinno być średnik tutaj:

class WordGame; 

... ale nie powinno być jedno na koniec swojej definicji klasy:

... 
private: 
    string theWord; 
}; // <-- Semicolon should be at the end of your class definition 
7

Pozbyć się średnikiem po WordGame.

Naprawdę powinieneś był odkryć ten problem, gdy klasa była o wiele mniejsza. Podczas pisania kodu powinieneś kompilować się za każdym razem, gdy dodajesz pół tuzina linii.

8

Na marginesie, należy rozważyć przechodzącą w ciągi setWord() jako odwołania do const, aby uniknąć nadmiernego kopiowania. Również w displayWord, rozważ użycie tej funkcji jako stałej, aby podążać za const-correctness.

void setWord(const std::string& word) { 
    theWord = word; 
} 
2

średnik powinna być na końcu definicji klasy zamiast po nazwie:

class WordGame 
{ 
}; 
Powiązane problemy