Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Renderer
- {
- public:
- void loadFile() { /* загрузка файла */ } // общая функция
- virtual void drawTriangle() = 0; // абстрактная функция
- };
- class OpenGLRenderer : public Renderer
- {
- public:
- void drawTriangle() { /* имплементация в Опенгл */ }
- };
- class VulkanRenderer : public Renderer
- {
- public:
- void drawTriangle() { /* имплементация в Вулкане */ }
- };
- int main()
- {
- Renderer* swag = new OpenGLRenderer(); // создаем указатель типа Renderer, на объект типа OpenGLRenderer
- swag->loadFile(); // вызывается функция из родительского класса
- swag->drawTriangle(); // вызывается функция из наследованого класса, в данном случае Опенгл
- }
Add Comment
Please, Sign In to add comment