How can I declare an object without initializing it?
This is my header file
#include "shader.h"
Class Renderer {
private:
kaarez::graphics::Shader m_terrainShader;
};
And my source file
#include "Renderer.h"
#include "Shader.h"
Renderer::Renderer() {
//Load terrain shader
m_terrainShader = kaarez::graphics::Shader("vertex.txt", "fragment.txt");
}
I get the error that theres no appropriate default constructor available for Shader.
Shader is header-only, and it works when I declare it in the main method by kaarez::graphics::Shader terrainShader("vertex.txt", "fragment.txt");
What is wrong?