我試圖通過一組字符串進行迭代,宣稱這裏:迭代:無效的操作數爲二進制表達
std::set<std::string>aB;
,這裏std::set<int>::iterator iter;
的問題是在這裏:
for(iter = aB.begin(); iter != aB.end(); ++iter) {
std::cout << *iter << n;
在理論,這應該打印出aB(可用建築物)的內容,但相反,它會給出兩個錯誤:
error: no viable overloaded '=' -> [ for(iter = aB.begin(); ]
和
error: invalid operands to binary expression -> [ std::set< int >::iterator ]
任何幫助將不勝感激,謝謝。
爲什麼你使用set-ints集上的字符串迭代器? o.O –