2009-09-13 56 views

回答

3

這是一個模板類,所以你應該能夠在實現中查找它。

然而,它的想法是它將一個迭代器(當前位置)和一個引用(指針)存儲到一個容器(正在插入)。然後,它重載操作員=這樣的:

insert_iterator& operator= (typename Container::const_reference value) 
{ 
    m_iter = m_container->insert(m_iter, value); 
    ++m_iter; 
    return *this; 
} 

所以需要支持所述插入方法和至少一個前向迭代的容器,以及具有標準的typedef(爲const_reference或也許VALUE_TYPE),因此它可以聲明的權利它的運算符的手形類型=。

其他輸出迭代器操作符(*,++)只返回* this。