我正在制作一个ascii游戏,其中有许多符号对应于类。
例如#= wallTile
现在我想创建tile类,以便我可以将text中的地图读入2d char矢量并从中创建tile对象。 Tileobjects在setter中使用一个函数,如“getTileBehaviourPerSymbol(char symbol)”
现在我即将开始切换案例,但肯定有更好的方法。 该函数应该浏览一些list / vector / enum / array idk,其中有可浏览的字符对应于一种类。
如何在C ++中完成?
答案 0 :(得分:1)
是的,例如使用像这样的std :: map
#include <map>
//Assuming each object in your game inherits from a base class
std::map<char, Object> foo.
Object getObjectBySybol(char c) {return foo[c]};