連続した数値の配列の初期化

こんなことがしたい。

array = [1..10]


こうですか、分かりません><

template<typename T>
std::vector<T>
make_counting(const T& first, const T& last){
    std::vector<T>    result(last - first);
    boost::copy(boost::irange(first, last), result.begin());
    return result;
}

std::vector<int> array = make_counting(0, 10);

range じゃなくて、配列のデータが欲しかったんじゃ…。