Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> goto.... 
:(
    Опции темы
4ybaka
Дата 2.1.2008, 22:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 370
Регистрация: 28.4.2007

Репутация: нет
Всего: нет



 smile 

появилась необходимость использовать goto в C#...но вот не дали.проблема в том,что метка,куда он должен перейти находится ДО того места,где стоит goto.исходя из примеров в мсдне,она должна стоять после...но насколько я помню из курса ассемблера - можно просто прогнать сборку файла 2 раза и все будет хорошо.так вот возник вопрос - как прогнать?мне просто казалось,что студия уже способна сама определить,есть ли метка или нет даже еще до сборки...

ЗЫ: или подскажите,как лучше разрешить ситуацию: идет обработка файла,и тут вылетает exception,после которого впринципе можно продолжить обработку файла.как вернуться в цикл обработки?

Это сообщение отредактировал(а) 4ybaka - 2.1.2008, 22:35


--------------------
"То,что вы понимаете - это все,что вы понимаете."
 Брайн Керниган
PM MAIL WWW   Вверх
1stain
Дата 2.1.2008, 22:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 486
Регистрация: 30.7.2007
Где: Киев - Харьков

Репутация: 8
Всего: 40



имхо goto можно использовать:
    [1]  для выхода из вложенных циклов
    [2]  для переходов в switch/case
    [3]  если вы - компилятор
может есть еще случаи корректного использования goto, только я лично использовал сабж только в случаях 1 и 2

наверное задачу можно сделать примерно так:
Код

    using (StreamReader reader = new StreamReader(...))
    {
        while (reader.Peek() != -1)
        {
            try
            {
                // Работа с файлом
            }
            catch (Exception ex)
            {
                if (ex is IOException) // Отсекаем исключения, связанные с вводом-выводом
                    throw;
                // Обработка исключения
            }
        }
    }



--------------------
Все знают, что это невозможно. Но вот приходит невежда, которому это неизвестно - он-то и делает открытие. (Albert Einstein)
user posted image
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0584 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.