-2
我有一個將整數轉換爲std :: string的函數。將int轉換爲字符串後始終爲0
std::stringstream Tools::toStringConverter;
std::string Tools::tempString;
std::string Tools::intToString(int num) {
toStringConverter.str(std::string());
toStringConverter << num;
toStringConverter >> tempString;
return tempString;
}
當我嘗試同時使用迭代器來使用這種方法,我得到正確的結果
for(Button b : buttons) {
std::cout << Tools::intToString(b.id);
}
輸出。同樣是正確的,如果我試試這個:
std::cout<< intToString(3);
但是當我使用簡單for
循環,我總是得到0.
for(int i = 0; i < NetworkManager::MAX_PLAYERS; i++) {
std::cout << Tools::intToString(i) << " ";
}
爲什麼不簡單使用['std :: to_string()'](http://en.cppreference.com/w/cpp/string/basic_string/to_string)? – user0042
我得到to_string不是std的成員 –
你用'-std = C++ 11'編譯器標誌集進行編譯嗎?你有沒有包含適當的頭文件? – user0042