Существует небольшая разница в том, что push_back
возвращает void
, возвращает ли insert
iterator
только что вставленный элемент.
Кстати, есть еще один способ проверить, делают ли они одно и то же: скомпилируйте следующие коды
int main()
{
std::vector<int const> v;
v.push_back(0);
return 0;
}
компилятор напечатает много надоедливых сообщений, просто прочитайте, и вы найдете push_back
вызовы insert
(если нет, попробуйте скомпилировать v.insert(v.end(), 0)
, чтобы посмотреть, вызывают ли они одну и ту же функцию вставки).