| string (1) | basic_string& insert (size_type pos, const basic_string& str);  | 
|---|---|
| substring (2) | basic_string& insert (size_type pos, const basic_string& str, size_type subpos, size_type sublen);  | 
| c-string (3) | basic_string& insert (size_type pos, const charT* s);  | 
| buffer (4) | basic_string& insert (size_type pos, const charT* s, size_type n);  | 
| fill (5) | basic_string& insert (size_type pos, size_type n, charT c); void insert (iterator p, size_type n, charT c);  | 
| single character (6) | iterator insert (iterator p, charT c);  | 
| range (7) | template <class InputIterator> void insert (iterator p, InputIterator first, InputIterator last);  | 
| string (1) | basic_string& insert (size_type pos, const basic_string& str);  | 
|---|---|
| substring (2) | basic_string& insert (size_type pos, const basic_string& str, size_type subpos, size_type sublen);  | 
| c-string (3) | basic_string& insert (size_type pos, const charT* s);  | 
| buffer (4) | basic_string& insert (size_type pos, const charT* s, size_type n);  | 
| fill (5) | basic_string& insert (size_type pos, size_type n, charT c); iterator insert (const_iterator p, size_type n, charT c);  | 
| single character (6) | iterator insert (const_iterator p, charT c);  | 
| range (7) | template <class InputIterator> iterator insert (iterator p, InputIterator first, InputIterator last);  | 
| initializer list (8) | basic_string& insert (const_iterator p, initializer_list<charT> il);  | 
| string (1) | basic_string& insert (size_type pos, const basic_string& str);  | 
|---|---|
| substring (2) | basic_string& insert (size_type pos, const basic_string& str, size_type subpos, size_type sublen = npos);  | 
| c-string (3) | basic_string& insert (size_type pos, const charT* s);  | 
| buffer (4) | basic_string& insert (size_type pos, const charT* s, size_type n);  | 
| fill (5) | basic_string& insert (size_type pos, size_type n, charT c); iterator insert (const_iterator p, size_type n, charT c);  | 
| single character (6) | iterator insert (const_iterator p, charT c);  | 
| range (7) | template <class InputIterator> iterator insert (iterator p, InputIterator first, InputIterator last);  | 
| initializer list (8) | basic_string& insert (const_iterator p, initializer_list<charT> il);  | 
 | 
 | 
to be, or not to be: that is the question...  |