如何访问配对
问题描述:
unordered_map<T, pair<int, T>> _sets;
假设我有一个名为_key的密钥,如何访问unordered_map中的数据?我怎样才能从<>中得到数据类型T和int?
谢谢!如何访问配对
答
T myT = _sets[_key].first;
pair<int, T> myPair = _sets[_key].second;
int fromPairInt = myPair.first;
T fromPairT = myPair.second;
快速访问:
int fromPairInt = (_sets[_key].second).first;
T fromPairT = (_sets[_key].second).second;
+0
“快速访问”是什么意思?您的解决方案执行两次查找的速度并不快。 –
+0
当你保存对象到另一个副本c'tor将工作, 快速访问保存副本和内存! –
'_sets [_key] .first'和'_sets [_key] .second'? – Downvoter
@cad有答案。如果你想要两者,考虑'auto&data = _sets [_key];'以避免查看两次。 –