标准库中有一些函数,例如std::map::insert
,它们返回std::map::insert
。有时,方便地填充对应于该对一半的两个不同变量。有没有简单的方法可以做到这一点?
std::pair
我正在寻找std::map<int,int>::iterator it;
bool b;
magic(it, b) = mymap.insert(std::make_pair(42, 1));
。
在C ++ 03中,您必须这样写:
std::tie(it, b) = mymap.insert(std::make_pair(42, 1));
在C ++ 17中,您可以使用结构化绑定。因此,您不必先声明变量:
magic