我试图为C++的昆虫建立一个简单的双向查看设施。 我有单向检查的罚款...
enum MyEnum
{
One,
Two,
Three
};
const boost::unordered_map<MyEnum,std::string> MyEnumMap = map_list_of
(One, "One")
(Two, "Two")
(Three, "Three");
然后看一看
MyEnumMap.at(One)
这工作但只允许基于密钥的查看 。 我喜欢使用双向查看容器, 如 推进: bimap 来方便地根据值和密钥进行反向查看 。 它似乎不像地图列表与推进兼容 :: bimap though. bimap 。
Firstly, should I still be using map_list_of with boost::bimap, or is another type required?
The maps will all be a basic (Enum, string) type.
其次,我是否仍然可以将地图简单地定义为上面的康斯特?我试图使地图尽可能容易地更新和保持,而不必过多地添加更多的类比。感谢您的洞察力。