C++ 未知类型名称,即使类型是通过标头定义的

C++ Unknown type name even though type is defined through headers

本文关键字:类型 定义 未知 C++      更新时间:2023-10-16

这让我发疯了,我有一个名为Model的类,一个名为View的类,以及一个GameCommand的头文件。我已经包含了正确的标题护罩和我所能知道的一切,但我不断收到一个未知的类型名称错误

型号.h

#ifndef MODEL_H
#define MODEL_H
class Model
{
public:
Model(); //default constructor
};
#endif

型号.cpp

#include "Model.h"
#include <iostream>
using namespace std;
Model::Model() //default constructor
{
whatever
}

视图.h

#ifndef VIEW_H
#define VIEW_H
class View
{
public:
View(); 
};
#endif

查看.cpp

#include "View.h"
#include <iostream>
using namespace std;
View::View()
{ whatever
}

游戏命令.h

#ifndef GAMECOMMAND_H
#define GAMECOMMAND_H
#include "Model.h"
#include "View.h"
void DoGoCommand(Model&, View&);
error: unknown type name 'Model'
void DoGoCommand(Model&, View&);
^
error: unknown type name 'View'
void DoGoCommand(Model&, View&);
^

我觉得我已经尝试了一切,有什么我在这里没有看到的吗?

您可以尝试转发声明类。

类模型;

类视图;

在你的游戏命令.h