Я пытаюсь перебрать последние 10 записей вектора.Размер вектора может быть любым от 0 до 100.
Как самое простое решение, хотя я начинаю цикл в vector.size () - 10;и затем проверьте внутри, если он не отрицательный, я могу получить доступ к объекту вектора.
К сожалению, он не работает (вообще не зацикливается), но если я заменяю тот же код на жестко закодированные числа, он работает.
Что я делаю неправильно, или в чем здесь проблема?
for (int i = -10; i < 0; i++) {
std::cout << "Normal Loop: i = " << i << std::endl;
}
Это работает, но цикл по вектору не работает:
std::vector<int> myVector;
for (int i = myVector.size() - 10; i < myVector.size(); i++) {
std::cout << "Vector Loop: i = " << i << std::endl;
}
Первый цикл печатаетвсе 10 чисел (от -10 до -1), но второй цикл ничего не печатает.
Поскольку myVector.size () прямо сейчас равен 0, он должен быть таким же, как и первый