Предотвращение исключений вне диапазона при обрезке в C++

Я пытаюсь обрезать строки, которые я прочитал из файла. Я читаю строку, урезаю ее и делаю с ней все. Когда я читаю файл, я в конце концов достигаю конца, что означает, что endpos+1 приводит к исключению вне диапазона.

Каков будет "лучший" способ решения этой проблемы? Ниже мой код обрезки.

size_t startpos = num.find_first_not_of(" ");
size_t endpos = num.find_last_not_of(" ");
num = num.substr(startpos, endpos-startpos+1); //out of range on final string read from file

Моя идея состояла бы в том, чтобы использовать для этого блок try-catch, но это кажется очень новичком (в конце концов, я один!)

Спасибо!

0 ответов

Другие вопросы по тегам