Search code examples
c++auto

Easy way to iterate over a vector of pair of pair


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.


Solution

  • You can try something like shown below.

    for (auto& it: vec) {
      auto[x, y, z] = tie(it.first.first, it.first.second, it.second);
    }