История изменений
Исправление hobbit, (текущая версия) :
Может быть у меня класс Image, и мне нужно разные форматы уметь загружать и потом в другой формат сохранять, мне что, теперь под каждый формат заводить внутри Image метод save и load?
Если именно так, как ты написал - сделать базовый класс ImageFile с pure virtual методами save и load, а под каждый формат сделать класс-наследника, и у него эти методы переопределить. Это, разумеется, в том случае, если потрохами форматов твой код занимается сам. Ну и отдельно собственно Image, с которым твоя программа оперирует в форматонезависимых вопросах.
Это лучше, чем делать класс для сохранения и класс для загрузки. Классом более естественно делать сущность, а не действие.
Исправление hobbit, :
Может быть у меня класс Image, и мне нужно разные форматы уметь загружать и потом в другой формат сохранять, мне что, теперь под каждый формат заводить внутри Image метод save и load?
Если именно так, как ты написал - сделать базовый класс ImageFile с pure virtual методами save и load, а под каждый формат сделать класс-наследника, и у него эти методы переопределить. Это, разумеется, в том случае, если потрохами форматов твой код занимается сам.
Это лучше, чем делать класс для сохранения и класс для загрузки. Классом более естественно делать сущность, а не действие.
Исходная версия hobbit, :
Может быть у меня класс Image, и мне нужно разные форматы уметь загружать и потом в другой формат сохранять, мне что, теперь под каждый формат заводить внутри Image метод save и load?
Если именно так, как ты написал - сделать базовый класс ImageFile с pure virtual методами save и load, а под каждый формат сделать класс-наследника, и у него эти методы переопределить. Это, разумеется, в том случае, если потрохами форматов твой код занимается сам.