本文整理汇总了C++中container_type::insert方法的典型用法代码示例。如果您正苦于以下问题:C++ container_type::insert方法的具体用法?C++ container_type::insert怎么用?C++ container_type::insert使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类container_type
的用法示例。
在下文中一共展示了container_type::insert方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: merge_and_replace
range_size_type merge_and_replace(container_type& set,
iterator_pair sequence, const range_type& new_range)
{
ASSERT( sequence.first != sequence.second );
if ( sequence.first->begin() <= new_range.begin()
&& sequence.first->end() >= new_range.end() ) return 0;
range_size_type old_sum = m_length_sum;
range_size_type low = min( sequence.first->begin(), new_range.begin() );
range_size_type high = max( ( --sequence.second )->end(), new_range.end() );
for ( ++sequence.second; sequence.first != sequence.second; )
{
range_size_type length = sequence.first->size();
set.erase( sequence.first++ );
m_length_sum -= length;
}
set.insert( sequence.second, range_type( low, high ) );
m_length_sum += high - low;
return m_length_sum - old_sum;
}
示例2: insert
iterator insert(iterator pos, Iter first, Iter last) {
//TODO: when GCC has fixed insert just directly return it's value
auto dist=std::distance(begin(), pos);
values.insert(pos, first, last);
return values.begin() + dist;
}
示例3: simple_merge
range_size_type simple_merge(container_type& set, iterator where, const range_type& new_range)
{
set.insert( where, new_range );
m_length_sum += new_range.size();
return new_range.size();
}