错误LNK2019错误C ++

时间:2014-03-25 16:17:27

标签: c++ visual-studio-2012 linker-errors undefined-reference

所以我遇到了我的C ++项目的问题,我收到了错误

“1> main.obj:错误LNK2019:未解析的外部符号”public:__thiscall RegisterLoginHandler :: RegisterLoginHandler(void)“(?? 0RegisterLoginHandler @@ QAE @ XZ)在函数”void _ cdecl main中引用: :`'registerLoginHandler'的动态初始化程序''(void)“(?? _EregisterLoginHandler @main @@ YAXXZ)”

main.obj错误行 RegisterLoginHandler *registerLoginHandler = new RegisterLoginHandler();

我想这可能是因为这个

#include <map>
#include "handler.h"

class RegisterLoginHandler :
    public Handler
{
private:
    std::map<int, int> *loginAttempts;
public:
    RegisterLoginHandler(void);
    ~RegisterLoginHandler(void);
    virtual bool OnCommand(MyPlayer *player, std::string cmd, std::vector<std::string> args, GameUtility *gameUtility);
    virtual void CheckForHacks();
    virtual void Load(GameUtility* gameUtility);
    bool AccountExists(std::string name);
    bool OnPlayerConnect(int playerid);
    bool OnDialogResponse(int playerid, int dialogid, int response, int listitem, char* inputtext, GameUtility *gameUtility);
};

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

错误消息足够清楚:链接器无法找到默认构造函数的定义

RegisterLoginHandler(void);

在类定义中声明。