Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
i7otep9wka
1 / 1 / 2
Регистрация: 13.12.2011
Сообщений: 81
#1

Callback + switch. Break needed

18.10.2014, 15:42. Просмотров 196. Ответов 2
Метки нет (Все метки)

C++
1
typedef int (*CallbackType)();
C++
1
2
3
4
5
6
void Queue_list::add_elem(CallbackType in_key){
        unit* temp = new unit;
        temp->key = in_key;
        temp->next = head;
        head = temp;
        }
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
void Tasks::Task_Generator(){
    switch (Difficulty_Of_Task)
    {
    case 1:
        add_elem(&Task_Difficulty_1);
    case 2:
        
    //  add_elem(&Task_Difficulty_2);
    case 3:
        add_elem(&Task_Difficulty_3);
    case 4:
        add_elem(&Task_Difficulty_4);
    case 5:
    //  add_elem(&Task_Difficulty_5);
    default:
        break;
    }
}
Difficulty_Of_Task=1.

Почему выполняются методы:
add_elem(&Task_Difficulty_1);
add_elem(&Task_Difficulty_3);
add_elem(&Task_Difficulty_4);
Ведь, согласно условию, должен выполнится только 1 метод:
add_elem(&Task_Difficulty_1);

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.10.2014, 15:42
Ответы с готовыми решениями:

While{switch{switch{break;}}} break выходит из while
В общем необходимо конструкцию switch запускать в цикле, в каждом case X: стоит...

Problem - switch - не работает break
Возникла проблема со switch. Всегда при вводе символа выполняется и case, и...

Убрать предупреждения на break в операторе switch(...)
Никак не пойму, как можно перекроить этот код: ...

Для чего нужны break и default в switch
что означает строка break и default в codeblocks? пример: #include ...

Исправить ошибку: break statement not within loop or switch
#include <iostream> using namespace std; int main() { int x; ...

2
Evg
Эксперт CАвтор FAQ
19124 / 6965 / 522
Регистрация: 30.03.2009
Сообщений: 19,608
Записей в блоге: 30
18.10.2014, 15:43 #2
Потому что нужно break'и ставить
0
i7otep9wka
1 / 1 / 2
Регистрация: 13.12.2011
Сообщений: 81
18.10.2014, 15:48  [ТС] #3
Спасибо, завтыкал %)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.10.2014, 15:48

Как выйти из цикла, если break относится к switch?
Как выйти из цикла в конструкции while(условие) { switch(i)...

Вычислить таблицу значений функции, используя switch в паре с break, оператор перехода goto
Доброго вам времени суток. Есть самое бредовое задание которое я только видел...

Ввести число от 0 до 5. Вывести его название на английском (или другом) языке (с использованием switch, break)
Ввести число от 0 до 5 . Вывести его название на английском (или другом) языке


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

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

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