❤️强烈推荐人工智能学习网站❤️
之前提到过有关map下标操作,但是今天这个更复杂一点了,写下来学习一下。
struct Node
{
int a;
int b;
};
int main()
{
map<int, Node> mapTest = { { 1,{ 11, 111}} , { 2, { 22, 222 }}};
map<int, Node>::iterator IT;
IT=mapTest.find(2);//find函数返回一个迭代器
if (mapTest.end() != mapTest.find(1))
{
cout << IT->second.a;
}
cout << mapTest[2].a << endl;
printf("%d\n",mapTest[1].b/mapTest[1].a);//正确用法
mapTest[1].a += 4;
cout << mapTest[1].a;//正确用法
return 0;
}
打印:22
22
10
15
如何找出22这个位置对于的值,上述代码中给出了2种方法。今天工作中,有人说cout<<mapTest[1].a;是错误用法,现在测试了一下,发现是正确的。