C ++错误:标识符'类名'未定义

时间:2015-01-23 22:36:50

标签: c++ class

我刚刚开始在C ++中使用类。作为第一个面向对象的项目,我想为Pen and Paper游戏编写角色创建者。

我创建了包含继承的类结构。

这是一个示例类:

#include "Characters.cpp"
#include "Fighter.cpp"
#include "Dwarf.cpp"

class FighterDwarf : public Characters, public Fighter, public Dwarf {

public:
    string test = "Hello, I am a fighter dwarf!";

    void testPrint() {
        cout << test << endl;
    }

    FighterDwarf() {

    }
};

主要是:

#include "stdafx.h"
#include <iostream>
#include <string>
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
    FighterDwarf fighterDwarf;
    fighterDwarf.testPrint();
    return 0;
}

如果不明显,则它们位于两个不同的文件/项目中。我不认为它很重要,但它们也在两个不同的文件夹中。

问题是我收到错误消息&#34;错误:标识符&#34; FighterDwarf&#34;未定义。

这很可能是初学者的错误。我猜我必须以某种方式宣布&#34; FighterDwarf&#34;在我可以创建类的实例之前的主文件中。如果是这种情况,我不知道怎么用课程。

按照他们的方式,我知道有很多人不喜欢多重继承,但我选择使用C ++而不是Java,因为这个特性。

解决: 如果我想在单个文件中执行所有操作,我需要在标题中执行此操作。我会这样做,因为有些课程有更多代码,我现在不想重写。此外,我发现使用一个文件而不是两个文件更容易拖动工作,至少在开始时我需要考虑更重要的事情。但是我会在下一个课程中将课程分成两部分。顺便说一下,为什么分组课程如此重要?使用一个班级更容易吗?

1 个答案:

答案 0 :(得分:2)

它与课程无关。你的main.cpp文件只需要 #include头文件,它声明和/或定义你的FighterDwarf类。