我正在使用Java编写Minecraft2D类游戏,并决定使用C++创建相同的游戏以增强我的C++能力。但我有一个问题。我在Java中有一个BlockType枚举,它包含BlockType的图像位置和硬度(需要多长时间来挖掘它)。我发现在C++中,枚举与Java中的不同。我如何在C++中实现这一点?C++ Minecraft2D块类型?
BlockType.java:
public enum BlockType {
STONE("res/blocks/stone.png",3),
COAL("res/blocks/coal.png", 2),
AIR("res/blocks/air.png",0),
GRASS("res/blocks/grass.png",1),
DIRT("res/blocks/dirt.png",1),
DIAMOND("res/blocks/diamond.png",5),
REDSTONE("res/blocks/redstone.png",3),
COBBLE("res/blocks/cobble.png",3),
BRICK("res/blocks/brick.png",4),
IRON("res/blocks/iron.png",4),
GOLD("res/blocks/gold.png",5);
public final String location;
public final int hardness;
BlockType(String location, int hardness){
this.location = location;
this.hardness = hardness;
}
}
谢谢,我会用这个。但是,如果您不介意,还有另一个问题:如何将这个文件用于多个文件?我的意思是我该如何声明结构或枚举?在头文件中?对不起,我是C++的noob,所以如果你回答我会很开心。 – 2012-08-09 13:08:10
我会使用类似这样的东西:http://ideone.com/zd4XI – 2012-08-11 10:30:22