Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 编译代码时出错_C++_Compilation_Linker_Linker Errors - Fatal编程技术网

C++ 编译代码时出错

C++ 编译代码时出错,c++,compilation,linker,linker-errors,C++,Compilation,Linker,Linker Errors,我似乎找不出这个错误的原因。我已经检查过很多次了,都找不到问题所在。这是我第一次看到这个错误 这是我编译时得到的。。。 错误: 链接代码时,链接行应包含与程序相关的所有源文件的.o或.cpp文件。什么是Human?你不应该在某处做个例子吗?@谢尔盖亚,你为什么删除C++标签?这是一个无效的编辑,作为一个受信任的编辑,你应该更清楚@πάνταῥεῖ, 可能是偶然的。很抱歉。它仍然与多态性无关,并将从链接器中受益。@otto要做更多的研究,请彻底阅读副本。这个问题是琐事,以前问过一百万次@o

我似乎找不出这个错误的原因。我已经检查过很多次了,都找不到问题所在。这是我第一次看到这个错误

这是我编译时得到的。。。 错误:






链接代码时,链接行应包含与程序相关的所有源文件的.o或.cpp文件。

什么是
Human
?你不应该在某处做个例子吗?@谢尔盖亚,你为什么删除C++标签?这是一个无效的编辑,作为一个受信任的编辑,你应该更清楚@πάνταῥεῖ, 可能是偶然的。很抱歉。它仍然与多态性无关,并将从链接器中受益。@otto要做更多的研究,请彻底阅读副本。这个问题是琐事,以前问过一百万次@otto您还应该显示实际的链接器命令行。是否包含所有要链接到最终目标的对象文件?
game.cpp:(.text+0x13): undefined reference to `Human::Human()'
game.cpp:(.text+0x1f): undefined reference to `orc::orc()'
collect2: ld returned 1 exit status
#include <iostream>  
#include "Character.h"
#include "Human.h"
#include "Orc.h"

using namespace std;

//Main.cpp
int main()
{
    //Character cc;
    Human hh;
    orc oo;
    char choice;
    char userC;
    cout << "Welcome!\n";
    cout << "" << endl;

    cout << "Pick your choice:\n";
    cout << "A -- Human\n";
    cout << "B -- Orc\n";
    cin >> choice;

    switch (choice)
    {
        case 'a':
        case 'A': 
                    hh.getStrength();
                    hh.getDexterity();
                    hh.getIntelligence();
                    hh.getType();
                    hh.createCharacter();

                    //cout << ""












        //case 'b':
        //case 'B':









    }

    return 0;
}
//character.h
#ifndef CHARACTER_H
#define CHARACTER_H

using namespace std;

class Character
{
    protected:
                float characterTotal;

    public:
                virtual int createCharacter() = 0; //Pure virtual function


};

#endif
//human.h
#ifndef HUMAN_H
#define HUMAN_H

#include "Character.h"
using namespace std;

class Human
{
    private:
                int characterStrength;
                int characterDexterity;
                int characterIntelligence;
                string characterType;
                int characterTotal;

    public:
                Human();//Constructor 

                int getStrength ()
                {
                    cout << "Enter a number from 0 to 18\n";
                    cin >> characterStrength;

                    return characterStrength;
                }

                int getDexterity ()
                {
                    cout << "Enter a number from 0 to 18\n";
                    cin >> characterDexterity;

                    return characterDexterity;
                }

                int getIntelligence ()
                {
                    cout << "Enter a number from 0 to 18\n";
                    cin >> characterIntelligence;

                    return characterIntelligence;
                }

                string getType ()
                {
                    cout << "Please choose one of the following\n";
                    cout << "A -- Paladin \n";
                    cout << "B -- Ranger \n";
                    cout << "C -- Wizard \n";\
                    cin >> characterType;

                    return characterType;
                }

                virtual int createCharacter()
                {
                    characterTotal = characterStrength + characterIntelligence + characterDexterity;
                    return characterTotal;
                }


};

#endif

-----------------------------------------------------------------------

//orc.h
#ifndef ORC_H
#define ORC_H

#include "Character.h"
#include "Human.h"

using namespace std;

class orc
{
    private:
                int characterStrength;
                int characterDexterity;
                int characterIntelligence;
                int chaD;
                int chaI;
                int chaS;
                string characterClan;
                int characterTotal;

    public:
                orc(); //Constructor

                int getStrength()
                {
                    cout << "Enter a number between 0 to 18\n";
                    cin >> chaS;
                    characterStrength = chaS + 2;

                    return characterStrength;
                }

                int getDexterity()
                {
                    cout << "Enter a number between 0 to 18\n";
                    cin >> chaD;
                    characterDexterity = chaD - 2;

                    return characterDexterity;
                }

                int getIntelligence()
                {
                    cout << "Enter a number between 0 to 18\n";
                    cin >> chaI;
                    characterIntelligence = chaI - 2;

                    return characterIntelligence;
                }
                string getClan()
                {
                    cout << "Please choose one of the following\n";
                    cout << "A -- Barbarian \n";
                    cout << "B -- Berserker \n";
                    cout << "C -- Vanguard \n";\
                    cin >> characterClan;

                    return characterClan;
                }

                virtual int createCharacter()
                    {
                        characterTotal = characterStrength + characterIntelligence + characterDexterity;
                        return characterTotal;
                    }

};
#endif
//Human.cpp
#include "Human.h"
Human::Human()
{
//ctor
}
Human::~Human()
{
//dtor
}
//Orc.cpp
#include "Orc.h"
Orc::Orc()
{
//ctor
}
Orc::~Orc()
{
//dtor
}
//Character.cpp
#include "Character.h"
Character::Character()
{
//ctor
}
Character::~Character()
{
//dtor
}