Я пытаюсь разбить строку на символ ":", а затем посмотреть, существует ли индекс 2. Моя функция разделения строк работает хорошо, поскольку я использую ее довольно давно, но после попытки попробовать {} catch () this не улавливает выполнение и вместо этого отображает ошибку отладки на моем экране.
std::vector<std::string> index = split_string(random_stringgg);
std::cout << index[1] << std::endl;
try {
std::string test = index[2];
}
catch (...) {
std::cout << "error occured" << std::endl;
return false;
}
std::cout << "no error";
Насколько мне известно, это должно попытаться найти 2-й индекс вектора "index", а затем поймать выполнение, если он не может / не может его найти. Однако у меня это не работает, и вместо этого просто выкидывает «векторный индекс вне допустимого диапазона» даже после добавления try / catch. У меня вопрос, почему он не улавливает и все еще отображает ошибку?