[[effSTL]] P31 points out that range-iterators are used consistently across containers —
– Every (yes both sequence/associative) container supports a ctor taking a couple of range iterators
– All sequence (not associative) containers support assign() method taking a couple
– Every (yes both sequence/associative) container supports erase() method taking a couple
However, I’d argue the most versatile is the insert() method in Every Sequence and Associative containers.
* insert() can emulate the range-ctor
* insert() can emulate assign()
This is also more versatile than operator=().
This member function is also simpler than the free function copy().