I try to learn C++ constructors, Imma noobie yet. I wrote the next class:  

**screen.h** 

```
#ifndef SCREEN_H
#define SCREEN_H

#include "pch.h"

class Screen
{
public:
    Screen(const std::string& name);
    Screen(const Screen& screen);
    Screen(Screen&& screen);

    const std::string& name() const;

    virtual void draw();
private:
    std::string m_name;
};

#endif // SCREEN_H

```

**screen.cpp** 

```
#include "screen.h"

Screen::Screen(const std::string& name)
    : m_name{name}
{
    m_name = name;
}

Screen::Screen(const Screen& screen)
    : m_name{screen.m_name}
{

}

Screen::Screen(Screen&& screen)
    : m_name{std::move(screen.m_name)}
{

}

const std::string& Screen::name() const
{
    return this->m_name;
}

```

But I get an issue in the compilation time: 

> 
> screen.cpp:4: error: undefined reference to `vtable for Screen'
> 
> 
> 

And so for all constructors.  

I can't get that is my mistake... Pls, can anyone explain me?