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

UptoLike

Андрианова А.А., Исмагилов Л.Н., Мухтарова Т.М.
Еще одним примером класса является класс «Матрица
действительных чисел»:
class Matrix
{
// определение структурных свойств
double** a; // адрес двумерного массива
// для хранения матрицы
int m, n; //количество строк и столбцов в матрице
// определение поведенческих свойств
public:
Matrix Transp(); // метод транспонирования матрицы
double Determinant(); // метод вычисления
// определителя квадратной
// матрицы
int RangMatrix(); // метод вычисления ранга
// матрицы
Matrix Summ(Matrix); // метод сложения двух матриц
Matrix Substr(Matrix); // метод вычитания
// для двух матриц
Matrix Mult(Matrix); // метод умножения двух матриц
Matrix Mult(double); // метод умножения матрицы
// на число
void InputMatrix(); // метод ввода матрицы
void OutputMatrix(); // метод вывода матрицы
. . .
};
Пример класса «Матрица действительных чисел» будет
использоваться для демонстрации других принципов ООП.
2.2.2. Инкапсуляция
Следующий принцип ООП инкапсуляция. Этот термин
характеризует сокрытие отдельных деталей внутреннего устройства
класса от внешних по отношению к нему объектов или пользователей.
Действительно, пользователю нет необходимости знать, из каких частей
состоит экземпляр класса и каким образом реализовано его поведение.
Реализация присущих классу структурных и поведенческих свойств,
является его собственным делом. Более того, отдельные свойства и
методы вообще могут быть невидимы за пределами этого класса. В этом
случае пользователю предоставляется набор средств для доступа и
управления объектом, чаще всего реализованных в виде методов класса.
50
                              Андрианова А.А., Исмагилов Л.Н., Мухтарова Т.М.
    Еще одним примером         класса     является     класс     «Матрица
действительных чисел»:

     class Matrix
     {
          // определение структурных свойств
          double** a;    // адрес двумерного массива
                         // для хранения матрицы
          int m, n;      //количество строк и столбцов в матрице

          // определение поведенческих свойств
     public:
          Matrix Transp();     // метод транспонирования матрицы
          double Determinant(); // метод вычисления
                                 // определителя квадратной
                                 // матрицы
          int RangMatrix();      // метод вычисления ранга
                                 // матрицы
          Matrix Summ(Matrix);   // метод сложения двух матриц
          Matrix Substr(Matrix); // метод вычитания
                                 // для двух матриц
          Matrix Mult(Matrix); // метод умножения двух матриц
          Matrix Mult(double); // метод умножения матрицы
                                // на число
          void InputMatrix();   // метод ввода матрицы
          void OutputMatrix(); // метод вывода матрицы
          .    .    .
     };

    Пример класса «Матрица действительных чисел»                      будет
использоваться для демонстрации других принципов ООП.


                                              2.2.2. Инкапсуляция

    Следующий принцип ООП – инкапсуляция. Этот термин
характеризует сокрытие отдельных деталей внутреннего устройства
класса от внешних по отношению к нему объектов или пользователей.
Действительно, пользователю нет необходимости знать, из каких частей
состоит экземпляр класса и каким образом реализовано его поведение.
Реализация присущих классу структурных и поведенческих свойств,
является его собственным делом. Более того, отдельные свойства и
методы вообще могут быть невидимы за пределами этого класса. В этом
случае пользователю предоставляется набор средств для доступа и
управления объектом, чаще всего реализованных в виде методов класса.
50