16.6.4 函数和容器方法

有时可以选择使用STL方法或STL函数。通常方法是更好的选择

### 首先,它更适合特定的容器;

### 其次,作为成员函数,它可以使用模板类的内存管理工具,从而在需要时调整容器的长度。

例如:

  1. 删除链表元素可使用remove( _iterator x)方法,该方法自动删除相应值和调整链表长度。
  • ### 对比STL的通用remove(begin_iterator, end_iterator, int x) 函数,后者不是成员函数,因而不能自动调整
  • ### 链表长度;但该函数返回超尾迭代器,允许使用该迭代器修改容器长度(如使用成员函数erase(begin_iterator, end_iterator))。

因此:尽管方法通常更适合,但非方法函数更通用。

原文地址:https://www.cnblogs.com/suui90/p/13550776.html