- •2.Операторы new, delete.
- •4. Перегрузка функций.
- •5. Ссылки. Назначение и особенности использования.
- •10. Классы и объекты. Члены классов. Атрибуты доступа.
- •11. Описание классов. Видимость и доступ к членам классов.
- •12. Функции-члены классов. Описание, вызов.
- •13. Инициализация объектов классов. Назначение, типы конструкторов.
- •14. Инициализация объектов классов. Описание конструкторов.
- •15. Особенности описания и использования конструкторов копирования.
- •16. Деструкторы. Назначение, описание, использование.
- •17. Пример описания конструктора копирования для класса со структурными членами-данными (массива).
- •24. Пример использования функции-друга.
- •25. Перегрузка операторов. Назначение, правила, способы.
- •26. Перегрузка операторов с использованием операторных-функций. Указатель this.
- •27. Перегрузка операторов с использованием дружественных функций.
- •28. Поразрядное копирование. Особенности перегрузки оператора присваивания.
- •29. Перегрузка операторов отношений. Примеры.
- •30. Перегрузка логических операторов. Примеры.
- •31. Перегрузка арифметических операторов. Примеры.
- •33. Перегрузка оператора ”[ ]” для класса со структурными членами-данными (массива).
- •37. Наследование. Конструкторы и деструкторы.
- •38. Наследование. Видимость и доступ к членам базовых и производных классов.
- •39. Статический (перегрузка операторов, функций, функций-членов, конструкторов) полиморфизм.
- •40. Пример описания класса на базе одиночного наследования.
- •41. Функции-шаблоны. Назначение, описание, использование.
- •42. Пример описания и вызова функции-шаблон для суммирования элементов массива.
- •45. Характеристика пространства имен.
- •46. Описание и использование пространства имен (на примере).
- •47. Понятие исключительная ситуация и способы обработки исключений.
- •50. 51.Синтаксис и использование команды try, catch. Варианты использования catch. Генерация исключений командой throw.
- •52. Варианты генерации и обработки исключений.
- •Istream iostrim ostream
- •Ifstream fstream ofstream
- •64. Пример создания и заполнения файла.
- •65. Пример открытия и чтения содержимого файла.
- •66. Пример заполнения файла записями (значение-значение, размещенными в полях 20 и 30 позиций, с прижатием соответственно влево и вправо).
10. Классы и объекты. Члены классов. Атрибуты доступа.
Объекты – относительно автономные части предметной области, которые взаимодействуют друг с другом путем передачи сообщений – требующий какую-либо функцию, которая присуща этому объекту.
Класс – особый тип данный, в котором одновременно описаны и атрибуты данного, и описываются действия, которые можно выполнять над этими данными (атрибутами).
Класс обладает свойством инкапсуляции. Класс состоит из членов данных (атрибуты) и членов функций (методов). Класс – отдельный контейнер, собственное пространство.
public – ‘ + ’ открытый режим доступа, члены класса доступны за пределами класса любым функциями программы.
private – ‘ - ‘закрытый режим доступа, члены класса доступны только для методов этого класса и классов друзей.
protected – ‘ # ’ защищенный режим доступа, члены класса доступны для методов этого класса, производных классов и дружественных классов.
У класса есть свои атрибуты доступа к членам класса:
Внутри класса все видимо.
Снаружи объекты (переменные типа класс) могут видеть только открытые члены (public +). В классическом варианте данные закрывают, а методы, с помощью которых можно получить доступ к данным, оставляют открытыми. Доступ снаружи еще с др/ класса: объект производy класса видит в базовом только public если есть м_д +.
Модификаторы доступ могут изменять видимость членов базового класса для объектов производного класса и для новых производных классов.
|
+ |
# |
- |
+ |
+ |
# |
- |
# |
# |
# |
- |
- |
- |
- |
- |
11. Описание классов. Видимость и доступ к членам классов.
Описание:
class [имя] {
private: […] //обычно тут описываются данные
public: […] //обычно описываются методы
protected: //зависит от класса и поставленной задачи
};
У класса есть свои атрибуты доступа к членам класса:
Внутри класса все видимо.
Снаружи объекты (переменные типа класс) могут видеть только открытые члены (public +). В классическом варианте данные закрывают, а методы, с помощью которых можно получить доступ к данным, оставляют открытыми. Доступ снаружи еще с другого класса: объект производного класса видит в базовом только public если есть м_д +.
Модификаторы доступ могут изменять видимость членов базового класса для объектов производного класса и для новых производных классов.
|
+ |
# |
- |
+ |
+ |
# |
- |
# |
# |
# |
- |
- |
- |
- |
- |
12. Функции-члены классов. Описание, вызов.
Член класса (функция) – это функция, принадлежащая классу, при помощи которой объект класса взаимодействует с объектами других классов или того же самого класса. Функции-члены принято называть методами. Метод представляет собой действие, которое должен выполнить объект для реализации своего поведения, или сервис, который может быть востребован одним объектом у другого. У каждого метода есть свой объект-получатель, то есть объект, для которого метод применяется. Если он использует только данные своего класса, то у него будет параметров.
тип_функции-члена имя_класса :: имя_функции-члена (список параметров)
оператор расширения видимости :: используется в заголовке с той целью, чтобы все объявленные внутри класса идентификаторы обрабатывались внутри их собственного пространства имен, а также во избежание неоднозначности использования имен. Запись тела метода ничем не отличается от записи в обычной функции.