我想知道如何在一个函数中加载许多图像并将其分配给一个变量,以便我可以调用它们并保存这些图像的信息。
例如 :
src = tile1.png
x = 10
y = 11
我需要什么样的数据类型?
我的目标是遍历文本文件中的行,加载每个图像及其相关信息,以便预先加载图像并准备好在屏幕上显示。我只是有点坚持如何完成。
我想知道如何在一个函数中加载许多图像并将其分配给一个变量,以便我可以调用它们并保存这些图像的信息。
例如 :
src = tile1.png
x = 10
y = 11
我需要什么样的数据类型?
我的目标是遍历文本文件中的行,加载每个图像及其相关信息,以便预先加载图像并准备好在屏幕上显示。我只是有点坚持如何完成。
如果你想推出自己的系统,你可以创建一个抽象基Image
类。然后为您要处理的每种图像类型(例如ImageJpeg
,ImagePng
)创建一个具体的子类。然后,这些具体的子类可以是像libjpeg或libpng这样的图像加载库的简单包装器。有一个创建具体对象但返回std::shared_ptr
抽象类的工厂函数。这些可以存储在标准容器中,例如std::vector
.
然而,已经有许多现有的图像库,包括特定的(如上面提到的 libjpeg/libpng)和通用的(如SDL_Image或Boost GIL)。其中有些已经有 C++ 类,有些则不需要你自己包装。
一个struct
。
例子:
#include <iostream>
#include <string>
using namespace std;
struct a_new_datatype{
string name;
int age;
char gender;
};
int main(){
a_new_datatype my_own_datatype;
my_own_datatype.name = "Christopher";
my_own_datatype.age = 34;
my_own_datatype.gender = 'M';
cout << "Name: " << my_own_datatype.name << endl;
cout << "Age: " << my_own_datatype.age << endl;
cout << "Gender: " << my_own_datatype.gender << endl;
return 0;
}