Предположим, что класс Car всегда создает один и тот же объект, за исключением того, что каждый из объектов Car может иметь внутри свой двигатель.
Это композиция, потому что когда объект Car разрушается, его двигатель также разрушается ?
Или это агрегация, потому что один и тот же тип двигателя может быть внутри разных автомобильных объектов?
Я думаю, что меня смущает вопрос о том, является ли какой-то класс композицией или агрегацией. Если вы основываете свое решение на том, уничтожается ли компонент при уничтожении его объекта, что такое компонент? Является ли компонент конкретным экземпляром двигателя, который был специально создан для автомобиля, или это класс двигателя в целом? В первом случае я хочу сказать, что это композиция, во втором я хочу сказать, что это агрегация.
Извините, я не могу опубликовать детали кода, мне не разрешено. Я просто хочу получить абстрактный ответ.