In my Qt5.7 program, I'm trying to implement a solution from this post (@vz0 answer). I want to access my MainWindow class function from Settings class, but I'm getting an linker error. Please tell me, what am I doing wrong?
Fragment of:
main:
MainWindow w; //MainWindow declaration
a.setActivationWindow(&w);
w.setWindowFlags(Qt::MSWindowsFixedSizeDialogHint);
mainwindow.h:
public:
static MainWindow* getInstance() { return &mainwindowInstance; }
void trayReload();
void tray();
private:
static MainWindow mainwindowInstance;
mainwindow.cpp:
void MainWindow::trayReload()
{
delete trayIcon;
MainWindow::tray();
}
settings.cpp:
void Settings::bar()
{
MainWindow* mainWin = MainWindow::getInstance();
mainWin->trayReload(); //I want to make this working
}
And I'm getting this error after compiling this code:
settings.obj:-1: error: LNK2001: unresolved external symbol "private: static class MainWindow MainWindow::mainwindowInstance" (?mainwindowInstance@MainWindow@@0V1@A)
What should I do in this situation to make it working?