Я не уверен, что не так с этим кодом:
std::vector<int> myVector(0);
if (myVector.back() == 12)
myVector.push_back(12);
Похоже, что вызов back () для пустого вектора приводит к сбою программы.
Я не понимаю, почему он рушится? Нужно ли нам проверять длину вектора перед вызовом back ()
? или возможно что это ошибка?
В документации сказано, что если вектор пуст, он возвращает неопределенное значение.