使用迭代器范围构造函数std::vector:
auto p = mul_map.equal_range(...);
std::vector<mul_map_type::value_type> v(p.first, p.second);
Run Code Online (Sandbox Code Playgroud)
为了提高效率,可能只需要在向量中存储指针或迭代器,这可以通过Boost.Range轻松实现:
#include <boost/range/counting_range.hpp>
auto p = mul_map.equal_range(...);
auto iters = boost::counting_range(p.first, p.second);
std::vector<mul_map_type::(const_)iterator> v(iters.begin(), iters.end());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
147 次 |
| 最近记录: |