2016-09-21 91 views
-7

爲了編寫我的程序,我需要stl庫來編寫我的代碼,但我無法爲我的生活找到代碼以STL格式拼接。什麼是拼接的STL代碼?

template <class T> 
void List<T>::splice(List<T>::Iterator position, 
    List<T>::Iterator start, List<T>::Iterator end) { 

} 
+8

呃,你能澄清一下嗎?你的問題是*方式*不清楚。 'splice'是什麼意思? – Rakete1111

回答

1

您是否看過std::list::splice

將元素從一個列表轉移到另一個列表。 沒有元素被複制或移動,只有列表節點的內部指針被重新指向。如果:get_allocator()!= other.get_allocator(),則行爲不確定。沒有迭代器或引用失效,移動元素的迭代器保持有效,但現在引用* this,而不是其他引用。

請注意,當在一定範圍內拼接時,時間是線性的,而不是O(1)。