QT如何保存和调用大量数据
const int map=
{
{1,2,3,4,5},
{1,2,3,4,5},
{1,2,3,4,5},
{1,2,3,4,5},
};
如上代码,定义了一个二维数组,用来表示一个二维地图上的数据,在需要用到地图的时候直接载入这个地图数据就可以了。
我想做个游戏,这个游戏里有很多把武器,每个武器有名字,有编号,有属性,有很多物品,也有各种名字,是否可以售卖,最大叠加数量等等一系列const数据,我也想做一个类似的表方便查找和调用数据,请问该如何做呢?
我想用vector来做,又不知道如何初始化,用数据做,又不知道如何定义类型。
大概的样式是这样的
QVector<Goods> weapon=
{
编号名称 攻击力 叠加数量
"0","木剑", 100 , 1,
"1","晶石", 0, 100,
};
c语言就定义结构体类型啊,c++就写类 qmake123 发表于 2021-2-26 15:35
c语言就定义结构体类型啊,c++就写类
我用的是C++,定义了一个物品类,但是我想对这个物品类大批量赋值,比如
class Goods
{
public:
explicit Goods(QString goodsname,const QString &pixpath);
void init(const ITEM *);
void setGoodsType(GOODSTYPE type);
void addNum(unsigned int num);
void decNum(unsigned int num);
void addDescript(const QString goodsdescript);
void setUsable(bool goodsusable);
void setSale(bool goodssale);
void setItemChance(float rate);
QString goodsName;//名称
GOODSTYPE goodsType;//种类
unsigned int goodsNum;//数量
QPixmap goodsPix;//图片
QString goodsDescript;//描述
bool goodsUsable;//可否使用
bool goodsSale;//可否出售
int level;//等级
double itemChance;//爆率
signals:
};
如上的物品类,现在我要将游戏中所有的物品添加到一个单独的文件中,如果定义的是结构体
typedef struct {
int item_id;
QString item_name;
Goods::GOODSTYPE item_type;//种类
unsigned int item_maxnum;//最大叠加数量
QPixmap item_pix;//图片
QString itme_descript;//描述
bool item_usable;//可否使用
bool item_usale;//可否出售
int item_level;//等级
double item_chance;//爆率
} Goods;
那么可以直接初始化
const Goods weapon[]=
{
//编号名称 种类 叠加数量
{0, "木剑",Goods::EQUIPMENT,1....},
{1, "晶石",Goods::EQUIPMENT,1...},
...
};
但是如果用类,该如何像结构体这样大量初始化呢?
页:
[1]