我有一个将整数转换为std :: string的函数。
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) << " ";
}
答案 0 :(得分:1)
std::string Tools::intToString(int num) {
std::stringstream toStringConverter;
toStringConverter << num;
return toStringConverter.str();
}
不要使用全局变量。