C++ STL Map需要有两个Key该咋办?

施工中……

使用pair1

1
2
3
4
5
6
7
8
//非完全代码,此方法编译通过
typedef pair<int,int> pairInt; //定义两个key
typedef map<pairInt,int> mapInt; //定义map
vector<mapInt> uv(line); //实现类似二维数组

uv[i].insert(make_pair(pairInt(a,b),c)); //插入
uv[i].count(make_pair(from[i][j],to[i][m])); //查询key
int temp = uv[i].at(make_pair(from[i][j],to[i][m])); //取值

奇技淫巧

你甚至可以把两个Key连起来,变成一个String🤦‍

参考资料:

  1. STL之map两个key
  2. LeetCode 报错解决 heap-buffer-overflow Heap-use-after-free Stack-buffer-overflow Global-buffer-overflow