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

Обработку исключений при вводе некорректных данных - C++

Восстановить пароль Регистрация
 
kuraiMuko
1 / 1 / 0
Регистрация: 11.01.2012
Сообщений: 32
19.01.2012, 23:21     Обработку исключений при вводе некорректных данных #1
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream> 
#include <signal.h>
 
using namespace std; 
class Student{public: string Status,Speciality,Name,LName;
                              string Write(){cout<<"Status: ";cin>>Status;
                                    if (Status != "Student"){throw Status;} 
                   }
                              string Display(){cout<<"Status: "+Status<<endl;} 
                  };
 
int main(){Student S; try{S.Write();} catch(string n){cerr<< "Error Status, try again"<<endl; S.Write();}
              system("pause"); S.Display(); system("pause");}
Вопрос, почему при попадании несколько раз на исключение программу выбрасывает? Спасибо.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
retmas
Жарю без масла
803 / 685 / 143
Регистрация: 13.01.2012
Сообщений: 1,580
19.01.2012, 23:52     Обработку исключений при вводе некорректных данных #2
а как она должна вести себя при не перехваченном исключении по вашему?
kuraiMuko
1 / 1 / 0
Регистрация: 11.01.2012
Сообщений: 32
19.01.2012, 23:58  [ТС]     Обработку исключений при вводе некорректных данных #3
Цитата Сообщение от retmas Посмотреть сообщение
а как она должна вести себя при не перехваченном исключении по вашему?
при не перехваченном исключении оно просто выведет данные(display()), а но я хотел добиться зацикливании, т.е повтор и повтор запроса пока не будут введены правильные данные.
retmas
Жарю без масла
803 / 685 / 143
Регистрация: 13.01.2012
Сообщений: 1,580
20.01.2012, 00:06     Обработку исключений при вводе некорректных данных #4
для зацикливания используются циклы, а в блоке catch ф-я Write может выбросить искл-е (что она и сделает при 2м неправильном вводе), которое нигде не перехватывается
Yandex
Объявления
20.01.2012, 00:06     Обработку исключений при вводе некорректных данных
Ответ Создать тему
Опции темы

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