Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.73
Gwini
10 / 10 / 3
Регистрация: 08.03.2014
Сообщений: 70
#1

Корректно ли использовать goto? - C++

13.08.2014, 19:29. Просмотров 1360. Ответов 24
Метки нет (Все метки)

Читал что оператор goto вообще советуют не использовать, кроме разве что глубоких циклов. Но нормально ли это будет, например, вот в таком коде:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
int main()
{
    char choice;
    cin >> choice;
    while (cin.get() != '\n')
    {
        cin.ignore(100, '\n');
        bad:cout << "Bad choice. Try again.\n";
        cin >> choice;
        continue;
    }
    switch (choice)
    {
    case 'a': cout << "A";
            break;
    case 'b':cout << "B";
    default: goto bad;
    }
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.08.2014, 19:29     Корректно ли использовать goto?
Посмотрите здесь:

Выйти из goto. C++
Избавиться от goto. C++
Альтернатива goto в С++ C++
C++ Замена goto
C++ Аналог goto
C++ Ненависть к Goto
Изменить программу (goto) C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kravam
быдлокодер
 Аватар для kravam
1513 / 873 / 44
Регистрация: 04.06.2008
Сообщений: 5,304
15.08.2014, 05:47     Корректно ли использовать goto? #21

Не по теме:

Gwini, ты что, боишься, что тебя злые дядьки заругают?



goto незаменим при правке собственных программ, когда к ним возвращаешься после некоторого времени или при правке чужого кода. Неохота разбираться с чужими фигурными скобками или вспоминать свои, используешь goto.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Gwini
10 / 10 / 3
Регистрация: 08.03.2014
Сообщений: 70
15.08.2014, 07:22  [ТС]     Корректно ли использовать goto? #22
Цитата Сообщение от kravam Посмотреть сообщение
Gwini, ты что, боишься, что тебя злые дядьки заругают?
именно
krv
72 / 52 / 11
Регистрация: 10.07.2014
Сообщений: 328
15.08.2014, 11:36     Корректно ли использовать goto? #23
Цитата Сообщение от kravam Посмотреть сообщение
Неохота разбираться с чужими фигурными скобками или вспоминать свои, используешь goto.
А потом такие костыли вылазят....
В принципе, самый распространённый вариант goto - выход из многократно вложенного цикла.
Да и то такая ситуация чаще решается выносом такого цикла в функцию и использованием return - ибо опять же чаще всего это получается отдельный логический кусочек программы.
kravam
быдлокодер
 Аватар для kravam
1513 / 873 / 44
Регистрация: 04.06.2008
Сообщений: 5,304
15.08.2014, 12:03     Корректно ли использовать goto? #24
Цитата Сообщение от krv Посмотреть сообщение
А потом такие костыли вылазят....
Это жизнь. В чём-то выигрываем, в чём-то проигрываем.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.08.2014, 15:03     Корректно ли использовать goto?
Еще ссылки по теме:

C++ Использовать оператор перехода GOTO в приведенном коде
О том, почему нелюбим goto; как его правильно использовать; и чем в моем случае его можно заменить? C++
C++ Замена goto C++
C++ При вводе пользователем числа от 0 до 9, вывести на экран название программы (использовать оператор goto)
C++ Преобразовать for в goto

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

Или воспользуйтесь поиском по форуму:
SatanaXIII
15.08.2014, 15:03     Корректно ли использовать goto?
  #25
 Комментарий модератора 
Конкретно про код тс никто не вспомнил и как обычно просто потрясли гортанями.

Закрыто.
Yandex
Объявления
15.08.2014, 15:03     Корректно ли использовать goto?
Закрытая тема Создать тему
Опции темы

Текущее время: 21:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru