Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Непонятная ошибка с case / 12 сообщений из 12, страница 1 из 1
08.01.2006, 17:28
    #33471920
Zmiy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Непонятная ошибка с case
Может кто объяснит мне в чем тут дело:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
switch(action) {
                         case  0 :
                              return  0 ;
                         case  1 :                              
                              cout << "Point constructor.\n";                              
                              cout << "Enter coordinates X, Y:";                              
                              int X;
                              int Y;
                              cin >> X >> Y;
                              Point pt(X, Y);
                              fo.open("log.txt", std::ios_base::app);
                              fo << "\n" << asctime (timeinfo);
                              log = ": Point was created with X, Y: ";
                              fo << X << ", " << Y << "\n";
                              fo << "-----------------------------";
                              fo.close();
                              cout << "\n Point was succefully created.\n";
                              system("PAUSE");
                              break;
                         case  2 :
                              break;
          
                              
          }
если уброать case 2: о все рабоает, а с ним выдает ошибку: 59 C:\Documents and Settings\alex\My Documents\c++\classes\main.cpp jump to case label
...
Рейтинг: 0 / 0
08.01.2006, 17:36
    #33471926
BlackStar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Непонятная ошибка с case
а если так
Код: plaintext
1.
2.
3.
case  2 :
  (void*) 0 ;
  break;
--
There Ain't No Such Thing As A Free Lunch
...
Рейтинг: 0 / 0
08.01.2006, 17:40
    #33471930
Zmiy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Непонятная ошибка с case
а почему так?
...
Рейтинг: 0 / 0
08.01.2006, 17:40
    #33471933
Zmiy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Непонятная ошибка с case
да и не помогает
...
Рейтинг: 0 / 0
08.01.2006, 17:51
    #33471942
BlackStar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Непонятная ошибка с case
а если то что внутри case 1 обернуть в фигурные кавычки?
--
There Ain't No Such Thing As A Free Lunch
...
Рейтинг: 0 / 0
08.01.2006, 18:25
    #33471966
Zmiy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Непонятная ошибка с case
странно, но могло. А в нете вездле пишут без кавычек...Спасибо огромное.
...
Рейтинг: 0 / 0
08.01.2006, 18:44
    #33471973
BlackStar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Непонятная ошибка с case
В интернете наверное никто не пытается внутри case создавать экземпляры классов.

--
There Ain't No Such Thing As A Free Lunch
...
Рейтинг: 0 / 0
08.01.2006, 19:44
    #33471997
Б.Л.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Непонятная ошибка с case
Простите, а в чем смысл данной конструкции?
Код: plaintext
1.
case  2 :
                              break;

Если она Вам так необходима, попробуйте выключить оптимизацию
...
Рейтинг: 0 / 0
09.01.2006, 14:44
    #33472633
Zmiy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Непонятная ошибка с case
да суть не в брейке была, эот для тета просто одну строку написал.
...
Рейтинг: 0 / 0
09.01.2006, 22:46
    #33473080
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Непонятная ошибка с case
Заключи case 1 в операторный блок. {}. Хотя какой там jump - не понятно.
...
Рейтинг: 0 / 0
10.01.2006, 00:17
    #33473127
nikname
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Непонятная ошибка с case
Попробуйте system() заменить на какой-нибудь getchar().
Возможно он выполняется независимо от вашей программы - в другом потоке.
...
Рейтинг: 0 / 0
10.01.2006, 09:44
    #33473422
redskin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Непонятная ошибка с case
BlackStar правильно написал. Проблема в создании экземпляра класса Point pt(X, Y); Если это объявление перенести наверх за пределы switch или блок внутри case 1 заключить в фигурные скобки, то все будет работать нормально.

Почему так, смотри, например, Стандарт - Приложение С (compatibility) п. С.1.4

Сообщение об ошибке, которое выдает компилер, не самое информативное, согласен :-)
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Непонятная ошибка с case / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]