Guest User

Вопросы по ООП, 3 курс.

a guest
Dec 8th, 2013
39
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Базовые вопросы (необходимый минимум):
  2. 1) Понятие объекта. Понятие класса. Чем класс отличается от структуры? Как можно создать экземпляр класса?
  3. 2) Методы и поля. Вызов методов. Как связаны методы и обычные функции? Private and public. friend-функции и friend-classes
  4. 3) Конструктор и деструктор. Зачем нужны, как и когда вызываются. Что будет, если конструктор будет private? А если деструктор?
  5. Зачем это может быть надо?
  6. 4) Конструктор копирования. Как описывается, зачем нужен, когда вызывается? Что будет, если будет приватным?
  7. 5) Перегрузка операторов. Как, зачем?
  8. 6) Перегрузка оператора=. Как, зачем, что будет, если не сделать? А если сделать приватным?
  9. 7) Const-методы и const-перегрузка. Что такое, зачем надо? Чем неприятно?
  10. 8) Аггрегация (объект как поле объекта). Способы реализации. Понятие владение полями.
  11. Работа с несколькими классами в разных файлах, разделение на объявление и определение.
  12. 9) Наследование. Понимание наследования как включения-с-расширением. Наследование как способ повторного ипользования кода.
  13. 10) Виртуальные методы. Наследование как наследование интерфейса. Чисто виртуальные (абстрактные) методы.
  14. 11) Может ли конструктор быть виртуальным? Почему? Может ли деструктор быть виртуальным? Когда необходим виртуальный деструктор?
  15. 12) Реализация виртуальных конструкторов. Виртуальный конструктор копирования и статический фабричный метод.
  16. 13) Множественное наследование как наследование интерфейса. Примеры. Понимание интерфейса как контракта.
  17.  
  18. Вопросы "за гранью" (полезно знать, но я не считаю себя вправе требовать):
  19. 1) Определение приведения типа для класса. Оператор приведения типа и конструктор приведения. Ключевое слово "explicit".
  20. 2) Множественное наследование и его проблемы (diamond-наследование). Виртуальное множественное наследование.
RAW Paste Data