最近タプルをよく使うのですが、タプルのリストを走査する際、 タプルの要素に名前を付けるために変数を作るのがめんどくさいです。 たとえばこんな感じ: std::vector<fusion::vector<int, char> > v; boost::for_each(v, [](fusion::vector<int, char> t) { const int x = fusion::at_c<0>(t); const char c = fusion::at_c<1>(t); // use... }); for_eachによって関数が呼び出される際にタプルを展開してくれれば、 パラメータとして各型のデータが渡されると共に名前も同時に付けることができるので便利です。 std::vector<fusion::vector<int, char> > v; fused_for_each(v, [](i