Я делаю игру gui api. Он будет работать как с Allegro, так и с SDL. Я использую полиморфизм для ввода и рисования растровых изображений. Проблема связана с этими тремя типами: битмапом, шрифтом и цветом. SDL и Allegro отличаются от них. Проблема в том, что я не могу использовать здесь полиморфизм из-за разных типов возвращаемых данных. Я бы не хотел иметь пустоту * в качестве возвращаемого типа. То, что я мог бы сделать вместо того, чтобы пользователь мог просто сделать:Класс с несколькими типами возврата?
AGBitmap bmp = AGBitmap("someimage.png");
graphics->draw(bmp);
Сейчас моя AGBitmap работает только с Allegro и имеет перегруженный оператор = и управляет памятью, так что пользователю не придется.
Что мне делать?
Благодаря
На StackOverflow много вопросов. Если вы хотите, чтобы люди, которые могли ответить на ваш вопрос, чтобы найти его, вам нужно будет сделать лучше по названию. –
Вы могли бы подумать, что он знал лучше после 3 килотонов. – Squirrelsama
Функции возвращают вещи, а не классы. – Qwertie