Effective_STL 学习笔记(四) 用 empty 来代替检查 size() 是否为0

对于方法 empty() 和 size() 应该首选 empty() 的构造,

理由很简单: 对于所有的标准容器,empty是一个常数时间操作,但对于一些 list 实现,size花费线性时间。

list::splice 实现 list 拼接的功能,将源 list 的内容部分或全部元素删除,拼插入到目的的 list:

  void splice ( iterator position, list<T, Allocator> & x );

  void splice ( iterator position, list<T, Allocator> & x, iterator i );

  void splice ( iterator position, list<T, Allocator> & x, iterator first,iterator last );

函数说明:

  将x元素移动到目的 list 的指定位置,高效的将它们插入到目的的 list 并从 x 中删除;

猜你喜欢

转载自www.cnblogs.com/kidycharon/p/10000823.html
今日推荐