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