C++ работа с классами в Си++ = Как начать работать с классами в си++

Рассмотрим работу с классами в Си++ на примере решения следующей задачи (я постараюсь максимально подробно прокомментировать код и свои действия по её решению вообще)
=

/*
12. Персональный компьютер. Реализуемые объекты:

  1. процессор
  2. память
  3. системная плата
  4. устройства ввода вывода

Реализовать процедуры ввода/вывода с учетом возможностей оборудования.

Уточнение =
Для каждой задачи необходимо реализовать объектную модель.
В реализации задач должны присутствовать=

  • наследование
  • агрегация
  • и др. взаимодействия классов.

Общение с пользователем осуществляется через консоль путем вызова
наиболее значимых методов классов, позволяющих увидеть основную функциональность задачи.
Для моделирования динамики процессов можно использовать повторяющиеся вызовы пользователем.
*/

Для решения этой задачи, необходимо уметь реализовать на СИ++ следующие "вещи" =

  1. Наследование классов
  2. Знать о видах доступа к элементам класса
  3. Знать о том как указывать базовый конструктор для конструктора класса-наследника
  4. Знать как создать объект (породить его) на основе описанного шаблона - которым, собственно и является класс
  5. Знать о том, что классы-члены класса в си++ в случае отсутствия конструктора по умолчанию нуждаются в списке инициализации
  6. Важно понимать ,как сделать так чтобы один класс был частью другого (агрегация) - а также как сделать так сделать так чтобы объекты "знали" о существовании друг друга

Листинг полного кода программы здесь.

Работа с классами в си++