C++ Allegro 5项目中有多个文件

C++ Allegro 5项目中有多个文件,c++,allegro5,C++,Allegro5,我正在将Allegro 5项目划分为几个文件,但我无法编译它 在.hpp文件中,我有一个类声明,其中我使用了“ALLEGRO_位图”类型,但编译器说“'ALLEGO_BITMAP'没有命名类型”,尽管我包含了相同的文件,当所有内容都在一个文件中时,这些文件足以编译和运行该项目,我的意思是: #include <allegro5/allegro.h> #include "allegro5/allegro_image.h" 所有allegro初始化(al_init()、al_init_

我正在将Allegro 5项目划分为几个文件,但我无法编译它

在.hpp文件中,我有一个类声明,其中我使用了“ALLEGRO_位图”类型,但编译器说“'ALLEGO_BITMAP'没有命名类型”,尽管我包含了相同的文件,当所有内容都在一个文件中时,这些文件足以编译和运行该项目,我的意思是:

#include <allegro5/allegro.h>
#include "allegro5/allegro_image.h"
所有allegro初始化(al_init()、al_init_image_addon()等)

“header_file.hpp”:

\ifndef头文件\u水电站
#定义头文件\u HPP
#包括
#包括“allegro 5/allegro_image.h”
类测试
{
ALLEGO_位图*位图;
};
#恩迪夫
当我删除

#include <allegro5/allegro.h>
#包括
.hpp文件中的第行我有更多错误:

allegro_image.h | 32 |错误:“al_init_image_addon”尚未声明| allegro|u image.h | 32 |错误:在“(”标记之前应为标识符| allegro_image.h | 32 |错误:在“;”标记之前需要构造函数、析构函数或类型转换| allegro|u image.h | 33 |错误:“al|u shutdown|u image|u addon”尚未声明| allegro|u image.h | 33 |错误:在“(”标记之前应该有标识符| allegro_image.h | 33 |错误:在“;”标记之前需要构造函数、析构函数或类型转换| allegro_image.h | 34 |错误:在“(”标记之前需要构造函数、析构函数或类型转换| header_file.hpp | 74 |错误:“ALLEGO_位图”未命名类型|

我试图使“位图”变量extern并在“main.cpp”中声明它,但这并没有解决问题


我想在allegro.cc论坛上提问,但尽管我收到了注册电子邮件,但我无法使用这些初始登录信息登录。

你给所有的al_init()打电话了吗函数?类是否在这些调用之前实例化?请阅读allegro wiki上的图像加载项教程,可能您遗漏了一些内容…我问了很多人,但没有人看到我在“ALLEGO_位图”中键入了错别字:P尽管非常感谢您的关注。主题可能已关闭:)哇,这些是很难抓到的…这里的每个人都至少发生过一次,抓到的很好!
#ifndef HEADER_FILE_HPP
#define HEADER_FILE_HPP

#include <allegro5/allegro.h>
#include "allegro5/allegro_image.h"

class testing_class
{
    ALLEGO_BITMAP *bitmap;

};

#endif
#include <allegro5/allegro.h>