boost::irangeをBoost.Parameterに対応



と書いたら意外に好評だったので、boost::irangeの拡張を書きました。
boost::irangeの内部実装に手を入れないといけないので、Boostの実装を持ってきて書き換えた新たな実装を用意しました。そのうちBoostに提案します。

#include <iostream>
#include <boost/range/irange_ex.hpp>
#include <boost/foreach.hpp>

#define foreach BOOST_FOREACH

int main()
{
    foreach(int i, boost::irange(0, 10, _step = 3)) {
        std::cout << i << std::endl;
    }
}
0
3
6

これの実装はあとでgithubに置いておきます。