I have a static method called getSingleton() in a class called Renderer, which I use as a macro like this:
Renderer.h
#define g_Renderer Renderer::getSingleton()
class Renderer {
private:
Renderer();
static Renderer renderer;
public:
Renderer getSingleton();
};
Renderer.cpp
#include "Renderer.h"
Renderer::Renderer() {}
Renderer Renderer::getSingleton() {
#ifndef CREATED_RENDERER
#define CREATED_RENDERER;
renderer = Renderer();
#endif // !CREATED_RENDERER
return renderer;
}
I access the method in main:
Main.cpp
#include "Renderer.h"
int main(){
return 0;
}
But Visual Studio gives me this error:
Main.obj : error LNK2019: unresolved external symbol "public: static class Renderer __cdecl Renderer::getSingleton(void)" (?getSingleton@Renderer@@SA?AV1@XZ) referenced in function main
Why is this? Thanks in advance!