Объектно-ориентированное программирование на C++. Андрианова А.А - 169 стр.

UptoLike

Объектно-ориентированное программирование на С++
// дружественная функция вывода матрица
friend ostream& operator << (ostream&, MatrixList&);
// метод проверки, является ли
// матрицы трехдиагональной
bool IsTripleDiagonal();
// метод получения элемента матрицы
// с заданными индексами
ListElement* ExistsElement(int, int);
};
// класс исключения обращения
// к несуществующему элементу матрицы
class BadIndexException
{
int m1, n1; // некорректные индексы
public:
BadIndexException(int, int);
friend ostream& operator <<
(ostream&, BadIndexException&);
};
// класс исключения некорректных размеров матриц при сложении
class BadDimensionException
{
// несовпадающие размеры двух матриц
int m1, n1, m2, n2;
public:
BadDimensionException(int, int, int, int);
friend ostream& operator <<
(ostream&, BadDimensionException&);
};
// класс исключения некорректных размеров матрицы
// для операций с квадратными матрицами
class NonSquareMatrixException
{
public:
NonSquareMatrixException();
friend ostream& operator <<
(ostream&, NonSquareMatrixException&);
};
Методы класса MatrixList часто обращаются к данным классов
элемента списка и элемента матрицы. Поскольку эти данные описаны в
private-части классов MatrixElement и ListElement, прямое
169
                         Объектно-ориентированное программирование на С++
         // дружественная функция вывода матрица
         friend ostream& operator << (ostream&, MatrixList&);
         // метод проверки, является ли
         // матрицы трехдиагональной
         bool IsTripleDiagonal();
         // метод получения элемента матрицы
         // с заданными индексами
         ListElement* ExistsElement(int, int);
    };

    // класс исключения обращения
    // к несуществующему элементу матрицы
    class BadIndexException
    {
         int m1, n1;         // некорректные индексы
    public:
         BadIndexException(int, int);
         friend ostream& operator <<
                        (ostream&, BadIndexException&);
    };

    // класс исключения некорректных размеров матриц при сложении
    class BadDimensionException
    {
         // несовпадающие размеры двух матриц
         int m1, n1, m2, n2;
    public:
         BadDimensionException(int, int, int, int);
         friend ostream& operator <<
                        (ostream&, BadDimensionException&);
    };


    // класс исключения некорректных размеров матрицы
    // для операций с квадратными матрицами
    class NonSquareMatrixException
    {
    public:
         NonSquareMatrixException();
         friend ostream& operator <<
                        (ostream&, NonSquareMatrixException&);
    };



     Методы класса MatrixList часто обращаются к данным классов
элемента списка и элемента матрицы. Поскольку эти данные описаны в
private-части классов MatrixElement и ListElement, прямое

                                                                      169