rope實現的接口能夠參考這裏。html
rope是可伸縮的string實現:後端
它們被設計爲用於把string看做一個總體的高效操做 。數組
好比賦值、串聯和子串的操做所花的時間差很少不依賴字符串的長度。與C的字符 串不一樣,rope是超長字符串的一個合理的表現,好比編輯緩衝區或郵件信息。 在後端,rope被實現爲引用計數子串的樹,並且每一個子串都存儲爲字符數組。rope 接口的一個有趣方面是begin和end成員函數老是返回const_iterator。這是爲了阻 止客戶進行改變單個字符的操做。這樣的操做是昂貴的,rope針對涉及整個字符串 的動做(如上所述,例如,賦值、串聯和獲取子串)優化;單個字符操做表現不好 。函數
對rope進行單點賦值能夠使用 mutable_reference_at() 函數,用mutable_begin() 帶起begin()。優化