Информация об изменениях

Сообщение Множественное наследование интерфейсов от 28.05.2018 17:55

Изменено 28.05.2018 17:57 Максим Рогожин

Множественное наследование интерфейсов
Привет!

Подскажите, пожалуйста, что почитать по теме дизайна использующего множественное наследование интерфейсов?
Какие паттерны там применяются?

Например, как решается такая задача

class INotifiable {
public:
   virtual void notify() =0;
};
class ISerializable {
public:
   virtual void serialize() =0;
};
shared_ptr<INotifiable> obj = ...;
if ( obj поддерживает еще и интерфейс ISerializable)
   то сохранить obj в файл

Просто с помощью dynamic_cast?
Множественное наследование интерфейсов
Привет!

Подскажите, пожалуйста, что почитать по теме дизайна использующего множественное наследование интерфейсов?
Какие паттерны там применяются?

Например, как решается такая задача

class INotifiable {
public:
   virtual void notify() =0;
};

class ISerializable {
public:
   virtual void serialize() =0;
};

shared_ptr<INotifiable> obj = ...;

if ( obj поддерживает еще и интерфейс ISerializable ) {
   сохранить obj в файл
}

Просто с помощью dynamic_cast?