c++具有相同键类型和不同项目类型的映射
可能的重复:
如何制作异构 boost::map?
可能有C++ 中的映射具有相同类型的键和不同类型的项目? 例如:
_______________________
| key | value |
|===========|===========|
| string | int |
|-----------|-----------|
| string | char |
|-----------|-----------|
| string | vector |
|-----------|-----------|
| string | .... |
Possible Duplicate:
how do you make a heterogeneous boost::map?
It's possible have a map in C + + with the same type for the key and different types of items?
For example:
_______________________
| key | value |
|===========|===========|
| string | int |
|-----------|-----------|
| string | char |
|-----------|-----------|
| string | vector |
|-----------|-----------|
| string | .... |
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
是的,您可以存储可变参数类型,例如
boost::any
或(我个人偏好,boost::variant
),您的值类型可以定义为:
因此 比
map
中的值要大,然后一旦提取了值,就可以使用访问者概念进行处理。Yes you can, store a variadic type, such as
boost::any
or (my personal preference,boost::variant
)So your value type can be defined as:
Store than in the
map
, and then once you've extracted values, use the visitor concept to process.我不太清楚你为什么要这样做,但我相信你可以使用
map
。您真正想做什么?
I'm not sure quite why you would want to do this, but you could use a
map<std::string, boost::any>
I believe.What are you really trying to do?