МСС ресурс Freeware Open source Кафедра МСС Факультет  

Пакет
"Моделювання
Динамічних Систем"
v5.2

ПРО ПАКЕТ ПОПЕРЕДНІЙ КЛАС НАСТУПНИЙ КЛАС      

mds_error.h
Структура mds_exception

exception
  |
  +--mds_exception

Використовується у:
model, caushy_region, calc, dynamo, discrete, integration, integration_rk45, result_manager
 

В пакеті МДС у режимі відладки (DEBUG) здійснюється автоматичний контроль допустимості операцій. У випадку некоректної операції (неузгодження розмірностей, невдалого читання даних з контейнеру тощо) генеруються виняткі типу MDS_DEFAULT_EXCEPTION, який визначений у файлі mds.h:

typedef mds_exception_message MDS_DEFAULT_EXCEPTION;

Виняткі mds_exception та mds_exception_message наслідується від стандартного exception, а отже такі виняткі перехоплюються catch(exception &ex). Певна річ, вони також можуть бути оброблені catch(mds_exception &ex) та catch(...). Повідомлення про помилку можна проглянути за допомогою стандартної функції what(). Крім того, mds_exception_message, незалежно від того, чи був виняток перехоплений, виведе відповідне повідомлення на консоль.

При створенні нових винятків, необхідно наслідувати їх від одного з наведених, наприклад, для виводу повідомлень у Ms Windows, можна створити виняток вигляду

#include "windows.h"
struct mds_exception_win : mds_exception_message
{
     mds_exception_win(const char* msg = "") : mds_exception_message(msg)
     {
          MessageBox(0, msg, "MDS exception", MB_ICONERROR);
     }
};


 

Члени класу
const char* _about
           Стрічка з інформацією про виняток.

 

Конструктори
mds_exception(const char* msg = "")
             Параметр: стрічка з інформацією про виняток.

 

Функції-члени класу
virtual const char*

what() const throw()
           Повертає стрічку з інформацією про виняток.

 


mds_error.h
Структура mds_exception_message

exception
  |
  +--mds_exception
        |
        +--mds_exception_message


 

Наслідкові члени класу mds_exception
_about

 

Конструктори
mds_exception_message(const char* msg = "")
             Параметр: стрічка з інформацією про виняток.

 

Наслідкові функції-члени класу mds_exception
what

 


Будь-ласка, надсилайте пропозиції, питання, зауваження: soft@unicyb.kiev.ua
Запрошуємо також до участі у самому проекті: надсилайте свої матеріали, які, по-можливості, будуть виставлені на сайті (див. Для авторів).

Кафедра Моделювання складних систем факультету кібернетики Київського університету імені Тараса Шевченка
03127, Україна, Київ, просп. Глушкова 2, корп. 6, кафедра МСС тел.: (044) 259-05-31, (044) 259-02-37, e-mail: garash@unicyb.kiev.ua
Всі права застережено.