I'm relatively new to c++, so bear with a little.
I have a class with the constructor:
Window(int width, int height, const std::string& title);
As defined in the header file.
I then have the code:
#include "window.h"
int main(int argc, char** argv) {
    new Window(800, 600, "Elysian Engine");
}
in Main.
When building, I am getting the error "undefined reference to 'Window(int, int, std::string const&)'" Which I do not understand, as I thought I am correctly importing it and everything. I understand this to be a linking error, but I'm not sure why.
Thanks!
--- EDIT ---
The code for window.cpp:
#include "window.h"
#include <SDL2/SDL.h>
#include <SDL/SDL.h>
#include <GL/glew.h>
Window::Window(int width, int height, const std::string& title) :
        width(width),
        height(height),
        title(title),
        isCloseRequested(false) {
    SDL_Init(SDL_INIT_EVERYTHING);
    SDL_GL_SetAttribute(SDL_GL_RED_SIZE,                8);
    SDL_GL_SetAttribute(SDL_GL_GREEN_SIZE,              8);
    SDL_GL_SetAttribute(SDL_GL_BLUE_SIZE,               8);
    SDL_GL_SetAttribute(SDL_GL_ALPHA_SIZE,              8);
    SDL_GL_SetAttribute(SDL_GL_BUFFER_SIZE,             32);
    SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE,              16);
    SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER,            1);
    SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK,    SDL_GL_CONTEXT_PROFILE_CORE);
    SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION,   3);
    SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION,   2);
    window = SDL_CreateWindow(title.c_str(), SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, width, height, SDL_WINDOW_OPENGL);
    context = SDL_GL_CreateContext(window);
    SDL_GL_SetSwapInterval(1);
    GLenum res = glewInit();
    if (res != GLEW_OK) {
        fprintf(stderr, "Error: '%s'\n", glewGetErrorString(res));
    }
}
Window::~Window() {
    SDL_GL_DeleteContext(context);
    SDL_DestroyWindow(window);
    SDL_Quit();
}
 
    