Handling exceptions/errors
става дума за задача 7 от домашното (от втората лекция, не от упражненията)
string original - текстът, първоначално въведен от конзолата.
string whatToReplace - това, което ще замествам
string replacement - това, което ще слагам вместо заместеното
използвам
original.replace(original.find(whatToReplace), whatToReplace.size(), replacement);
и тук се появяват двата проблема:
1 - ako whatToReplace НЕ присъства в original, хвърля грешка
terminate called after throwing an instance of 'std::out_of_range'
what(): basic_string::replace: __pos (which is 18446744073709551615) > this->size() (which is 12)
как се справям с този проблем?
2 - дори и да открия как реално да приложа try and catch блокове (прдполагам че това трябва), как после това цялото да го имплементирам във while цикъл (.find() намира само индекса на първото срещане, нататък се предполага че трябва да има още)
рових доста в интернет, пробвах различни неща, но явно ако някой не го обясни, няма да стане. благодаря предварително!
да, първо, благодаря за бързия отговор.
на ръба съм бил през цялто време, на n-тото прочитане на страничката дето и ти прати се сетих какво ми убягваше. :D
поздрави!