如何通过键从 map 中获取值(value)?我有一个整数 vector A
,还有一张 map 。我想打印 M[1]
,但我不明白我该怎么做,因为我有一个错误:
error: invalid operands to binary expression ('ostream' (aka 'basic_ostream<char>') and 'mapped_type' (aka 'std::__1::pair<int, int>'))
cout << M[1];
~~~~ ^ ~~~~
我的代码:
int main() {
vector<int> A;
map<int, pair<int,int> > M;
FOR(i,1,maxN) {
pair<int,int> p;
p.first = 1;
p.second = 2;
M[i] = p;
}
FOR(i,0,t) {
int x = A[i];
cout << M[x] << endl;
}
return 0;
}
最佳答案
映射的值类型是 std::pair。您需要单独打印该对中的 2 个值:
cout<< M[x].first << "," << M[x].second << endl;
关于c++ - 如何通过key从map中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32381424/