std::map > map;
std::vector v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
map["onesssss"] = v;
for (const auto& temp:map)
{
//cout << temp.first<< endl;
printf("%s", temp.first);
for (auto& v : temp.second){
cout <<v<< endl;
}
}
断点调试这边temp.first的值是onessss,类型却是unsigned int,输出值是8[T1。注释掉的那行代码也会报错。小白求大神解答啊!
item.first是一个指针,所以是unsigned int
#if 1
#include
#include
#include
#include
using namespace std;
int main()
{
vector v;
map m;
v.push_back(1);
v.push_back(2);
v.push_back(3);
m["sdfsf"] = *v.begin();
map<char*, int>::iterator iter = m.begin();
for (; iter != m.end(); ++iter)
{
cout << iter->first << " " << iter->second << endl;
}
return 0;
}
#endif
这是我的代码.不知道你的代码没有粘贴完全还是...