С++ одноэлементная ошибка LNK2019

Я пытаюсь написать синглтон на С++, но получаю ошибку LNK2019:

Код серьезности Описание Ошибка строки файла проекта LNK2019 неразрешенный внешний символ "private: __thiscall DBWriter::DBWriter(void)" (??0DBWriter@@AAE@XZ), на который ссылается функция "public: static class DBWriter * __cdecl DBWriter::getInstance(void) )" (?getInstance@DBWriter@@SAPAV1@XZ) ИЛИСравнить

Может ли кто-нибудь помочь мне найти мою ошибку?

Вот ч. файл:

#pragma once
#ifndef DBWRITER
#define DBWRITER

 class DBWriter
{

public:

    ~DBWriter();
    static DBWriter* getInstance();

private:
    DBWriter();

    static DBWriter *dbwriter;
};

#endif //DBWRITER

и файл .cpp:

#include "DBWriter.h"

DBWriter * DBWriter::getInstance()
{
    if (dbwriter == NULL)
        dbwriter = new DBWriter();
    return dbwriter;
}

Буду рад, если кто-нибудь объяснит мне мою ошибку. Спасибо.


person STF    schedule 19.02.2017    source источник
comment
Укажите полное сообщение об ошибке. Вы определяете свой конструктор и деструктор?   -  person Greg Kikola    schedule 19.02.2017
comment
Я больше ничего не добавлял в код   -  person STF    schedule 19.02.2017
comment
@πάντα ῥεῖ - Я не понимаю, почему вы думаете, что это один и тот же вопрос, это не та же проблема !!!   -  person STF    schedule 19.02.2017
comment
@STF Где твое определение dbwriter?   -  person πάντα ῥεῖ    schedule 19.02.2017
comment
@πάνταῥεῖ в файле .h   -  person STF    schedule 19.02.2017
comment
@STF Нет, это декларация. У вас также должно быть определение.   -  person πάντα ῥεῖ    schedule 19.02.2017
comment
@STF Неправильно, у вас есть только декларация в заголовочном файле. static элементы должны иметь где-то определение, предпочтительно в исходном файле класса.   -  person Greg Kikola    schedule 19.02.2017
comment
@GregKikola как dberiter=NULL?   -  person STF    schedule 19.02.2017
comment
Нет, например DBWriter *DBWriter::dbwriter = NULL; в вашем файле .cpp. Это определит DBWriter::dbwriter.   -  person Greg Kikola    schedule 19.02.2017
comment
@GregKikola В какую функцию мне его добавить?   -  person STF    schedule 19.02.2017
comment
@STF Вне любой функции.   -  person Greg Kikola    schedule 19.02.2017
comment
@GregKikola, так когда это произойдет?   -  person STF    schedule 19.02.2017