如何访问配对

问题描述:

unordered_map<T, pair<int, T>> _sets; 

假设我有一个名为_key的密钥,如何访问unordered_map中的数据?我怎样才能从<>中得到数据类型T和int?
谢谢!如何访问配对

+3

'_sets [_key] .first'和'_sets [_key] .second'? – Downvoter

+1

@cad有答案。如果你想要两者,考虑'auto&data = _sets [_key];'以避免查看两次。 –

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将工作, 快速访问保存副本和内存! –