ВУЗ:
Составители:
Рубрика:
Объектно-ориентированное программирование на С++
предназначена для вывода сообщения об ошибке. В данной функции
текст сообщения определен быть не может, поскольку заранее
неизвестно, какая ошибка возникнет. Следовательно, она должна быть
чисто виртуальной и переопределяться в классах-наследниках.
// базовый класс иерархии исключений
class Exception
{
public:
// метод вывода сообщения об ошибке
virtual void ShowMessage() = 0;
};
Для каждого вида исключительных ситуаций иерархия содержит
свой класс, производный от класса Exception, в котором переопределен
виртуальный метод вывода сообщения об ошибке ShowMessage().
// класс исключения, связанного с неправильным
// заданием размеров матрицы
class BadDimensionException : public Exception
{
public:
void ShowMessage()
{
cout << "Размерности матрицы некорректны"
<< endl;
}
};
// класс исключения, связанного с обращением
// к несуществующему элементу матрицы
class BadIndexException : public Exception
{
public:
void ShowMessage()
{
cout << "Элемента с такими индексами в матрице
не существует" << endl ;
}
};
// класс исключения несоответствия размеров,
// возникающего при суммировании матриц
class DimensionSumException : public Exception
{
public:
void ShowMessage()
{
141
Объектно-ориентированное программирование на С++
предназначена для вывода сообщения об ошибке. В данной функции
текст сообщения определен быть не может, поскольку заранее
неизвестно, какая ошибка возникнет. Следовательно, она должна быть
чисто виртуальной и переопределяться в классах-наследниках.
// базовый класс иерархии исключений
class Exception
{
public:
// метод вывода сообщения об ошибке
virtual void ShowMessage() = 0;
};
Для каждого вида исключительных ситуаций иерархия содержит
свой класс, производный от класса Exception, в котором переопределен
виртуальный метод вывода сообщения об ошибке ShowMessage().
// класс исключения, связанного с неправильным
// заданием размеров матрицы
class BadDimensionException : public Exception
{
public:
void ShowMessage()
{
cout << "Размерности матрицы некорректны"
<< endl;
}
};
// класс исключения, связанного с обращением
// к несуществующему элементу матрицы
class BadIndexException : public Exception
{
public:
void ShowMessage()
{
cout << "Элемента с такими индексами в матрице
не существует" << endl ;
}
};
// класс исключения несоответствия размеров,
// возникающего при суммировании матриц
class DimensionSumException : public Exception
{
public:
void ShowMessage()
{
141
Страницы
- « первая
- ‹ предыдущая
- …
- 139
- 140
- 141
- 142
- 143
- …
- следующая ›
- последняя »
