在這裏聲明一個集合有什麼問題,這是我的教授代碼。聲明一組C++
set<Token> stmtBeginTokens
{
Token::IF, Token::ID, Token::WHILE, Token::INPUT,
Token::OUTPUT, Token::EMPTYSTMT, Token::BREAK,
Token::RETURN, Token::HALT, Token::NEWLINE
};
後來(供參考):
bool isSTMTBegin(Token t)
{
return stmtBeginTokens.find(t) != stmtBeginTokens.end();
}
的誤差爲1> C:\用戶\ SAM \保管箱\編譯項目2 \ compilerproject2 \法\ imp.h(39):錯誤C2473:'stmtBeginTokens':看起來像一個函數定義,但沒有參數列表。
我的教授使用c + + 11和我有舊版本,是這個問題?我閱讀了參考資料,但看起來過於複雜和令人困惑。
謝謝!
是的,您應該使用C++ 11,這是自C++ 11以來支持的initializer_list。 – deepmax 2013-05-05 10:35:28
@MM .:做出答案;) – 2013-05-05 10:36:24