编辑:如果您想查看代码,下面是:
我正在制作一个使用allegro5库来生成动画的程序。因为我希望避免在每台使用该程序的计算机上安装库,所以我尝试将头文件和.so文件粘贴到我的项目dir中。这棵树是这样的:
根部
include
allegro5 <- (Dir where the headers of allegro are)
Percolation.h
QuickUnion.h
lib
allegro5 <-(Dir where the .so files are)
Percolation.cpp
QuickUnion.cpp
Percolati
我使用库Allegro5。在我的动画类中,我有vector<ALLEGRO_BITMAP*> sprites。在构造函数中,我用一些位图填充它,而在析构函数中,我想正确地删除它。然而,我的解决方案仍然会导致内存泄漏:
for each (ALLEGRO_BITMAP* it in sprites)
{
al_destroy_bitmap(it);
}
for (auto it : sprites)
delete it;
sprites.~vector();
或者它们的任何其他组合。
我真的找不到为什么它不能正确删除。
编辑:
现在我有了这个,仍然有一个小的内存泄
我正在做我在Allegro 5中的第一个游戏,我已经有了标题菜单渲染,但是我想在菜单中添加可点击的文本。我如何才能使它在您将鼠标悬停在文本上时可以单击它?我认为使用for语句检查像素会对性能造成很大的影响,以下是我到目前为止所得到的:
#include <allegro5\allegro.h>
#include <allegro5\allegro_image.h>
#include <allegro5\allegro_primitives.h>
const int width = 1280;
const int height = 720;
int mai
我一直在做这个平台快板5的测试,稍后我会把它变成一个游戏。直到现在,Allegro的每个附加组件都运行得很好,当我尝试使用音频播放我在Audacity中制作的.ogg文件时。我使用的是MinGW版本,并静态地将所有内容与Code::块链接起来。它只有一个文件,main.cpp:
#include <stdio.h> // Good library to always have on hand
#include <math.h> // C++ math l
几天前,我下载了克里恩,在C++和Allegro5上做了一个学校项目。首先,我使用了安装有自制的快板,但它不起作用,所以我自己编写了它。由于我以前从未使用过CMake,所以我花了一些时间来包含库和编译项目,但我成功地做到了。问题是,当我尝试运行它时,它会抛出一个错误:
dyld: Symbol not found: __al_mangled_main
Referenced from: /usr/local/lib/liballegro_main.5.0.dylib
Expected in: flat namespace
in /usr/local/lib/liballegro_main.5.0