Is there an easy way to iterate over a vector of pair of pair using auto
?
I have a vector<pair<pair<int,int>, int>> vec
and want to iterate something like.
for(auto [x, y,z] : vec)
but I am getting an error. Is there an easy way to do so?
for(auto [[x,y],z] : vec)
also gives an error.
You can try something like shown below.
for (auto& it: vec) {
auto[x, y, z] = tie(it.first.first, it.first.second, it.second);
}
You could write:
for (auto & [p, z] : vec)
{
auto & [x, y] = p;
// ... use x, y, z
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With