Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# Windows Forms
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
AlSeed
5 / 5 / 3
Регистрация: 04.11.2015
Сообщений: 106
1

Прекращение выполнения программы при обработке исключения

14.03.2016, 21:57. Просмотров 834. Ответов 4
Метки нет (Все метки)

Всем привет.
Возник такой момент - в программе зачастую необходимо отлавливать исключения и обрабатывать их. При этом при пойманном исключении необходимо прерывать выполнение метода.
делаю это таким образом:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 methodname()
        {
            bool error = false; //задаём флаг 
            try
            {
               //ловим исключение
            }
            catch (Exception)
            {                
                error = true; //при обработке исключения задаём значение флага =true
            }
            if (!error)
            {
                //если мы не поймали исключение, выполняем основной код метода
            }
        }
Так вот, хотелось бы узнать - не слишком ли это костыльный метод, нет ли каких-то стандартных способов для таких штук?
Заранее спасибо за ответ.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.03.2016, 21:57
Ответы с готовыми решениями:

Избавиться от зависаний выполнения программы при длительных вычислениях
Если программа выполняет большое количество вычислений, то окно программы...

Ошибка при обработке оператора И
using System; using System.Collections.Generic; using System.ComponentModel;...

Заполнение ProgressBar при обработке матриц
Программа перемножает 2 матрицы, если их размеры 30х30 то у меня это занимает 5...

Не достаточно памяти при обработке изображений
Сделал программу, начинающий программер, на моих системах х32 и х64 все...

Свои сообщения при обработке исключений
Делаю проверку заполнения textbox и нужно выдать сообщение, если один из них не...

4
Someone007
2227 / 1795 / 820
Регистрация: 09.05.2015
Сообщений: 4,433
Завершенные тесты: 1
14.03.2016, 22:15 2
Какая-то странная логика у вас, обычно это выглядит так
C#
1
2
3
4
5
6
7
8
9
10
11
methodname()
{
            try
            {
                // выполняем основной код метода
            }
            catch (Exception) // ловим возможное(!) исключение
            {                
                // обрабатываем ошибку...
            }
}
1
EvilFromHell
944 / 843 / 345
Регистрация: 26.04.2012
Сообщений: 2,648
14.03.2016, 22:16 3
AlSeed, а что мешает в блоке catch написать return?
0
Даценд
Модератор
Эксперт .NET
4158 / 3939 / 2609
Регистрация: 20.04.2015
Сообщений: 7,139
14.03.2016, 22:21 4
Лучший ответ Сообщение было отмечено AlSeed как решение

Решение

AlSeed,
Зачем такие сложности?
C#
1
2
3
4
5
6
7
8
9
10
11
12
methodname()
{
    try
    {
        // ловим исключение
        // пока не поймали продолжаем выполнять основной код метода
    }
    catch (Exception)
    {                
        // при необходимости сообщаем об ошибке
    }
}
1
AlSeed
5 / 5 / 3
Регистрация: 04.11.2015
Сообщений: 106
14.03.2016, 23:42  [ТС] 5
Спасибо всем большое за ответы.
Так и знал, что всё должно быть проще.
0
14.03.2016, 23:42
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.03.2016, 23:42

Красный крест при обработке изображения
Всем привет! Вычислял мат. ожидание для для блоков пикселей с размером 2*2 и...

При обработке события Button.Click метод вызывается дважды
Я новичок в этом деле. Возникла проблема. На кнопку в форме повесил событие...

"Ускорение" программы по обработке ошибок
Пишу диплом и возникла маленькая проблема: есть программа, которая при вводе...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru