Нужно придумать адекватное наследование для этой схемы. Можно из любой тематики, но чтобы было не трудно описать поля классов потом)
Interpollice,? Тут все есть) мне надо придумать названия конкретные для классов. Типо d1-лептоп B1-монитор, B2- компьютер) а что будет наследоваться от лептопа дальше не могу придумать --- Сообщение объединено с предыдущим 11 ноя 2019 Тематика может быть любой --- Сообщение объединено с предыдущим 11 ноя 2019 Поднял до 100 р
Transistor Capacitor | | +-------+------+ | Chip | CPU | Personal Computer Код Transistor Capacitor | | +-------+------+ | Chip | CPU | Personal Computer Но это офк говно из жопы, тк представление на объектах/предметах реального мира не работает, тк это говно из жопы.
r1chi_inactive2411360, ноутбук не является видеокартой --- Сообщение объединено с предыдущим 11 ноя 2019 adziri, вот именно .не в том направлении схема идет . d3 не является d2 и тд
Всмысле не является?.. У тебя есть два базовых класса B1 и B2. От них через множественное наследование наследуется D1. От D1 наследуется D2, а от D2 - D3. Читать надо наоборот, видеокарта является частью ноутбука (но это уже не совсем отношения вида наследование). --- Сообщение объединено с предыдущим 11 ноя 2019 Окей, начнем с основ. Открытое, оно же публичное наследование означает связь «является». Если вы пишете класс D (derived – «производный») который открыто наследуется от класса B (base – «базовый»), то тем самым сообщаете компилятору C++ (а заодно и людям, читающим ваш код), что каждый объект типа D является также объектом типа B, но не наоборот. class Person {...}; [FONT=-apple-system]class Student : public Person {...};[/FONT] Код class Person {...}; [FONT=-apple-system]class Student : public Person {...};[/FONT] В данном примере каждый студент – человек, но не каждый человек – студент. Именно такую связь подразумевает данная иерархия. Мы ожидаем, что всякое утверждение, справедливое для человека – например, что у него есть дата рождения, – справедливо и для студента, но не все, что верно для студента – например, что он учится в каком-то определенном институте, – верно для человека в общем случае. Закрытое, оно же приватное наследование не означает «является». Закрытое наследование означает «реализовано посредством…». Делая класс D закрытым наследником класса B, вы поступаете так потому, что заинтересованы в использовании некоторого когда, уже написанного для B, а не потому, что между объектами B и D существует некая концептуальная взаимосвязь. Таким образом, закрытое наследование – это исключительно прием реализации. Можно так же сказать, что закрытое наследование означает наследование одной только реализации, без интерфейса. Если D закрыто наследует B, это означает, что объекты D реализованы посредством объектов B, и ничего больше. В общем случае закрытое наследование почти то же, что и композиция. Вот почему, то что у вас на скриншоте полная фигня, в общем случае неважно какие имена будут у классов D1, B1 или Laptop, GPU, etc, потому что в отрыве от вашей предметной области это не будет иметь значения и дать конкретные советы сложно не зная ее.