|
|||
Лабораторная работа Тема. Простейшие классы и объектыСтр 1 из 2Следующая ⇒ Лабораторная работа Тема. Простейшие классы и объекты Теоретическое введение.Классы представляют абстрактные типы данных с открытым интерфейсом и скрытой внутренней реализацией. В классах реализованы базовые принципы объектно-ориентированного программирования (ООП): 1) абстракция данных; 2) инкапсуляция – в классах объединяются данные и методы (функции) для работы с ними, так как лишь через методы возможен доступ к сокрытым данным класса; 3) наследование – в производных классах наследуются члены базового класса; 4) полиморфизм – возможность использования одних и тех же методов для работы с различными объектами базового и порожденных им классов. Определение простейшего класса без наследования имеет вид: class имя_класса { // по умолчанию раздел private – частные члены класса public: // открытые функции и переменные класса }; Имя класса является новым типом данных. Понятию переменной данного типа соответствует понятие объекта класса. Список членов класса включает описание данных и функций. Функции, описания которых находятся в определении класса, называются функциями-членами класса. Переменные и функции, объявленные в разделе класса по умолчанию или явно как private, имеют область видимости в пределах класса. Их можно сделать видимыми вне класса, если объявить в разделе public:.Обычно переменные объявляются в разделе private, а функции в разделе public. Классами в С++ являются также структуры (struct) и объединения (union).В отличие от класса члены структуры по умолчанию являются открытыми, а не закрытыми. Кроме того, объединения не могут наследоваться и наследовать. При реализации функциональной части класса могут быть использованы функции-члены класса, конструкторы, деструкторы, функции-операторы. Функции класса всегда объявляются внутри класса. Определение функции может находиться и внутри класса. Такие функции называются inline-функциями. Обычно определения функций-членов класса помещаются вне класса. При этом перед именем функции указывается имя_класса:: .
|
|||
|