【发布时间】:2011-11-15 04:34:41
【问题描述】:
我有以下代码:
map<StatTypesEnum, ValueHandler*>::const_iterator itr;
for(itr=player1->Stats.begin(); itr!=player1->Stats.end(); itr++)
{
cout << "Stat: " << itr->first << " Value: " << (ValueHandler*)(itr->second)->getValue() << endl;
}
getValue() 方法返回一个 int。如果我在迭代器之外计算值,它会以 base10 十进制显示,但是当我使用迭代器(如上)返回值时,它会以 base16 十六进制显示。
为了完整起见,以下行显示为 base10:
cout << player1->Stats[Power]->getValue() << endl;
我希望迭代器显示 base10。
谢谢。
【问题讨论】: