STL中的不同容器具有不同的插入操作接口,比如
vector,list,queue等使用push_back,pop_front等
map, set等使用insert
如何编写通用的插入操作呢。这里可以使用insert iterator
也可以直接使用insert_iterator模板类定义更复杂的insert iterator
vector,list,queue等使用push_back,pop_front等
map, set等使用insert
如何编写通用的插入操作呢。这里可以使用insert iterator
template<typename OutIt>
void build( OutIt it ) {
for( int i=0;i<100;i++) {
*it ++ = i;
}
}
std::vector<int> vec;
build( std::front_inserter( vec ));
build( std::back_inserter( vec ));
std::set<int> _set;
build( std::inserter( _set, _set.begin()));
也可以直接使用insert_iterator模板类定义更复杂的insert iterator
本文介绍了如何在C++标准模板库(STL)中为不同的容器实现通用的插入操作。通过使用`std::front_inserter`、`std::back_inserter`及`std::inserter`等迭代器适配器,可以方便地为`vector`、`list`、`set`等容器编写统一的插入函数。

280

被折叠的 条评论
为什么被折叠?



