错误LNK2019:未解析的外部符号新手需要提示

时间:2013-10-27 17:08:15

标签: c++ visual-studio-2010

我只是在用C ++探索一些更高级的编码,所以想象一下,当我无法解决这个问题时,我感到很沮丧:

1>Main.obj : error LNK2019: unresolved external symbol "int __cdecl playerAtk(void)" (?       playerAtk@@YAHXZ) referenced in function _main
1>C:\Users\Hezekiah Detinc\documents\visual studio 2010\Projects\Custom_1\Debug\Custom_1.exe : fatal error LNK1120: 1 unresolved externals

我曾尝试在这里寻找答案,但我发现的解决方案过于具体,对我没什么用处。

如果有人可以回答;什么一般会导致这个问题?解决它有哪些解决方案?

这是我的Main.cpp;

//Custom 1

//Include files that may be used. will cut out unused files in release.
#include <iostream>
#include <vector>
#include <string>
#include <cstdlib>
#include <ctime>
#include <algorithm>
#include "EnemyBaseClass.h"
#include "PlayerBaseClass.h"

using namespace std;

int main()
{
    Enemy emy;
    Player plr;

    emy.enemyAtk();
    emy.enemyDef();
    emy.enemyHp();

    plr.playerAtk();
    plr.playerDef();
    plr.playerHp();

    int playerAtk();

    cout << playerAtk();


    cout << "You're attacked by a Monster!\n";

    system(" pause ");
    return 0;
}

如果我需要发布我的标题或其他_.cpp文件,请告诉我。

2 个答案:

答案 0 :(得分:2)

您声明并使用playerAtk作为函数(没有实现,因此未定义的引用)

更改

int playerAtk();
...
cout << playerAtk();

int playerAtk;
...
cout << playerAtk;

(您可能想要初始化变量)

答案 1 :(得分:0)

错误很简单:您正在使用已声明的函数,但尚未编写任何定义(实现)。检查源(.cpp)文件。