- •Вопрос 1. Ссылки и ссылочные параметры.
- •Вопрос 2. Перегрузка функций.
- •Вопрос 3. Шаблоны функций.
- •Вопрос 4. Использование const с указателями.
- •Вопрос 5. Область действия класса. Управление доступом к членам класса. Отделение интерфейса от реализации.
- •Вопрос 6. Понятие конструктора .Использование констр-ра с аргументами по умолчанию. Конструктор по умолчанию.
- •Вопрос 7. Понятие деструктора. Когда вызывается конструктор и деструктор.
- •Вопрос 8. Константные объекты и функции-члены.
- •Вопрос 9. Дружественные функции и друж. Классы.
- •Вопрос 10. Указатель this.
- •Вопрос 11. Операции new и delete.
- •Вопрос 12. Статические члены класса.
- •Вопрос 13. Понятие перегрузки операций.
- •Вопрос 14. Функции-операции как члены класса и как друж-е функции
- •Вопрос 15. Перегрузка операций ввода/вывода в поток, бинар и унар операций.
- •Вопрос 17. Перегрузка операций индексации массива.
- •Вопрос 18. Понятие наследования. Механизм ограничения доступа при наследовании.
- •Вопрос 19. Приведение типа указателя базового класса к указателю производного класса и наоборот.
- •Вопрос 21. Конструкторы и деструкторы в производных классах.
- •Вопрос 22. Неявное преобразование объектов производных классов в объекты базового класса.
- •Вопрос 23. Иерархия классов. Уровни наследования.
- •Вопрос 24. Множественное наследование.
- •Вопрос 25. Неопределённость при множ-м наследовании. Включение «классы в классах».
- •Вопрос 26. Понятие виртуальной функции.
- •Вопрос 27. Понятие полиморфизма.
- •Вопрос 28. Абстрактные и конкретные базовые классы.
- •Вопрос 29. Статическое и динамическое связывание.
- •Вопрос 30. Виртуальные деструкторы.
- •Вопрос 31. Шаблоны классов.
- •Вопрос 32. Шаблоны классов и пользовательские типы
- •Вопрос 33. Шаблоны и наследование.
- •Вопрос 34. Классы и объекты потоков ввода/вывода. Иерархия потоковых классов.
- •Вопрос 35, 38. Предопределённые потоковые объекты. Состояние ошибок потока.
- •Вопрос 36. Манипуляторы потоков.
- •Вопрос 37. Неформатированный ввод/вывод с помощью read/ write
- •Вопрос 38. Состояние ошибок ввода/вывода
- •Вопрос 39. Понятие исключения. Когда должна использоваться обработка исключений.
- •Вопрос 40. Генерация исключений. Повторная генерация исключений.
- •Вопрос 41. Перехват исключений.
- •Вопрос 42. Спецификация исключений. Обработка неожиданных исключений.
- •Вопрос 43. «Раскручивание» стека. Иерархия исключений стандартной библиотеки.
- •Вопрос 44. Конструкторы, деструкторы и исключения. Исключения и наследование.
- •Вопрос 45. Обработка неуспешного выполнения new.
- •Вопрос 46. Класс auto_ptr и динамич выделение памяти.
- •Вопрос 47. Static_cast, reinterpret_cast
- •Вопрос 48. Инфо о типе времени выполнения. Оператор dynamic_cast
- •Вопрос 49. Ключевое слово explicit.
- •Вопрос 50. Ключевое слово mutable.
- •Вопрос 51. Указатели на члены класса.
- •Вопрос 52. Множественное наследование. Виртуальные базовые классы.
- •Вопрос 53. Классы-контейнеры и классы-итераторы.
- •Вопрос 54. Понятие ооп. Три условия ооп-программы. Парадигмы ооп.
- •Вопрос 55.Основные составляющие объектного подхода: абстрагирование, инкапсуляция, модульность.
- •Вопрос 56. Основные составляющие объектного подхода: иерархия, типизация, полиморфизм.
- •Вопрос 57. Природа объекта. Состояние, поведение, идентичность объекта.
- •Вопрос 58. Отношения между объектами. Связи. Агрегация.
- •Вопрос 59. Природа классов. Отношения между классами. Типы отношений.
Вопрос 55.Основные составляющие объектного подхода: абстрагирование, инкапсуляция, модульность.
Абстрагирование: процесс выделения существенных характеристик некоторого объекта, отличающих его от всех других видов объектов> чётко опред. его концептуальные границы с точки зрения наблюдателя.
Виды Абстрагирования:
абстракция сущности: объект– модель некой сущности в предметной области.
абстракция поведения: объект состоит из обобщённого множества операций.
Клиент – любой объект, использующий ресурсы другого объекта (сервера).
Инкапсуляция – процесс отделения друг от друга эл-тов объекта, определяющие его устройства и поведения. Никакая часть сложной системы не должна зависеть от конструкции другой части, что обеспечивает независимость каждого объекта.
Абстрагирование и инкапсуляция служат, чтобы отделить (изолировать) Эл-ты абстракции (интерфейса) от их реализации.
Интерфейс отражает внешнее поведение объекта, описывая абстракцию поведения всех объектов данного класса (собрано всё, что касается взаимодействия данного объекта с любыми другими объектами)
Реализация описывает представление этой абстракции и мех-м достиж-я желаемого поведения объектов.
Модульность- св-во системы, к-ая была разложена на внутренне связные , но слабо связанные м/у собой модули.
Вопрос 56. Основные составляющие объектного подхода: иерархия, типизация, полиморфизм.
Иерархия – упорядочивание абстракций, распределение их по уровням.
Осн. виды иерархических структур:
- стр-ра класса («is a»)== наследование (является)
- стр-ра объектов («part of»)== агрегация (один объект является частью другого)
Наследование: такое отношение м/у классами, когда один класс заимствует структурную или функциональную часть одного или нескольких других классов. Т.е. единственное и множественное наследование
Типизация- способ защититься от использования объектов одного класса вместо другого, или, по крайней мере, управлять таким использованием.
Виды типизации:
*сильная; *слабая; *связи:
**статическая
**динамическая
Статическая типизация определяет время, когда имена связываться с типами.
Полиморфизм– концепция, утверждающая, что экземпляры произвольных классов при необходимости могут представлять себя как экземпляры базовых классов.
Полиморфизм – когда одно и то же имя может означать объекты разных типов, но имея общего предка все они имеют общее подмн-во операций, к-ые можно над ними выполнять.
Полиморфизм– это использование операций и ф-ций различным образом в зависимости от того, с какими типами величин они работают.
Вопрос 57. Природа объекта. Состояние, поведение, идентичность объекта.
Объект – нечто, что имеет границы, воспринимаемо мысленно, осязаемо(видимо), то на что направлены мысли или действия.
Объект обладает: состоянием, поведением, идентичностью.
Структура и поведение схожих объектов определяет схожий для них класс.
Состояние объекта – хар-ся перечнем всех св-в данного объекта и текущими значениями этих св-в.
Поведение объекта– то, как объект действует и реагирует. Поведение объекта выражается в терминах состояния объекта и передаче сообщений.
Операция – определяет воздействие одного объекта на другой с целью вызвать соответствующую реакцию.
Виды операций:
модификатор – изменяет состояние объекта
Селектор – считывает состояние объекта, но не изменяет его.
Итератор – организует доступ ко всем частям объекта в строго определённой последовательности.
Конструктор – операция создания объекта и(или) его инициализация
Деструктор операция, освобождающая и/или разрушающая сам объект
Идентичность –свойство объекта, кот отличает его от всех других.
Уникальная идентичность, не обязательно имя, сохраняется на всё время существования объекта, даже если его внутреннее состояние изменится.