0 / 0 / 0
Регистрация: 07.08.2022
Сообщений: 4
1

Не срабатывает catch

13.03.2023, 18:02. Показов 454. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
При выполнение программы возникает ошибка виндовс, где говориться о превышении диапозона вектора, хотя должен срабатываться catch. Когда я полностью убрал try и catch, было то же самое.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <vector>
using namespace std;
 
int main() {
    vector<int> v(5);
    try
    {
        for (int i = 0; i < 6; i++)
        {
            v[5] = rand() % 10;
        }
    }
    catch (const exception& ex) {
        cout << "fa";
    }
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.03.2023, 18:02
Ответы с готовыми решениями:

Не срабатывает try catch
Вообщем дело обстоит так: На форме лежит DBImage и на нем требуется отобразить изображение из...

Catch(.) не срабатывает
Имеется такой фрагмент код: HANDLE hData = GetClipboardData(CF_TEXT | CF_LOCALE); char*...

Исключение работает не корректно: при вводе размера массива -2 не срабатывает catch (bad_alloc)
#include &lt;iostream&gt; #include &lt;vector&gt; #include &lt;new&gt; #include &lt;stdexcept&gt; using namespace std;...

Не срабатывает catch
private void button5_Click(object sender, EventArgs e) { int i =...

4
Модератор
Эксперт Java
2693 / 1192 / 386
Регистрация: 11.08.2017
Сообщений: 3,677
Записей в блоге: 2
13.03.2023, 22:06 2
try-catch не для таких вещей в плюсах
0
фрилансер
5841 / 5368 / 1102
Регистрация: 11.10.2019
Сообщений: 14,336
13.03.2023, 22:09 3
sh1bu, это неопределённое поведение будет. Используй метод at(), он в дебаге покажет ошибку. Но в релизе уже не поможет

и вообще:
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
#include <vector>
#include <cstdlib>
 
int main()
{
    std::vector<int> v(5);
    for (auto& i:v)
    {
        i = std::rand() % 10;
    }
}
0
Модератор
Эксперт Java
2693 / 1192 / 386
Регистрация: 11.08.2017
Сообщений: 3,677
Записей в блоге: 2
13.03.2023, 22:18 4
Алексей1153, тут скорее был акцент именно на отлове подобного поведения, похоже автор пришел в плюсы либо с джавы, либо в шарпа (вот тут не знаю можно ли)
0
1567 / 488 / 106
Регистрация: 17.05.2015
Сообщений: 1,480
14.03.2023, 00:40 5
Цитата Сообщение от sh1bu Посмотреть сообщение
хотя должен срабатываться catch
С какой стати он вам должен?

Добавлено через 3 минуты
Цитата Сообщение от Алексей1153 Посмотреть сообщение
Используй метод at(), он в дебаге покажет ошибку. Но в релизе уже не поможет
Поведение at от конфигурации сборки никак не зависит.
0
14.03.2023, 00:40
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.03.2023, 00:40
Помогаю со студенческими работами здесь

Конструкция try catch в цикле while. Зацикливается блок catch
Здравствуйте. Столкнулся с проблемой: при попытке запихнуть в цикл конструкцию try catch -...

Запрос срабатывает в SQL Server, но не корректно срабатывает в Visual Studio 2017
(SELECT ROW_NUMBER() over (ORDER BY AVG(Отметки.Отметка) DESC) ID, .ФИО, .Группа, Отметки.,...

Таймер срабатывает раньше времени или вообще не срабатывает
Помогите, пожалуйста, разобраться, что нетак с таймером. Браузер Chrome При создании записи,...

Не срабатывает success, срабатывает error
Здравствуйте, письмо отсылает, а success не срабатывает, не пойму почему:help: ...

В одном месте кода проверка условия срабатывает как нужно, а в другом месте кода такое же условие не срабатывает
Здравствуйте. Делаю проверку на заполнение полей. Если поля не заполнены, то вывести ошибку в...

try-catch
Какой тип проекта создавать в Visual Studio чтобы можно было сделать обработку исключений с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru