Best way to organize singleton with virtual methods

Viewed 1372

I'm working on simple framework written on C++. Now i have something like

app.cpp

#include "app.h"

namespace App
{

}

void App::init()
{

}

void App::timerEvent(int time)
{

}

But what if i don't want to listen to timerEvent in some cases? I still have to write empty method implementation.

My idea is to move from namespace to class App : public BaseApp with virtual void BaseApp::init() = 0 and virtual void BaseApp::timerEvent(int time) {} in BaseApp (similary to Qt QApplication). However App should be singleton then, but i don't see any way to specify it from BaseApp, so i have to write singleton code in App and all virtual idea makes no sense.

How should i design it?

P.S. I don't want to use listeners here. It seems like overkill for me.

P.P.S. I need singleton because i initialize app instance from main, but still want to access its methods from another classes.

1 Answers
Related