[英]C++ Searching object in nested pair of an std::set
我有一組STL類型:
std::set< std::pair< double, std::pair< unsigned, vector< unsigned > > > > X
我知道我可以通過更改數據結構來簡化事情,但這對我來說不是一個選擇。
如何僅在集合中內部對的前unsigned
元素中搜索unsigned
類型的元素?
我嘗試了以下方法,但不起作用。
auto it = std::find_if(X.begin(), X.end(), [value_searching]
(const std::pair<double, std::pair< unsigned, vector< unsigned > >& elem) {
return elem->second.first == value_searching
});
您需要使用.
而不是->
,因為elem
是pair
的引用,而不是指針。
auto it = std::find_if(X.begin(), X.end(), [value](auto& elem) {
return elem.second.first == value;
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.