我想定义一个以字符串为键的映射,但值将再次以字符串为键的映射,但值将是类似性质的映射,...,最终是最后一个链中的映射将是从字符串到字符串的映射。
我正在尝试将标签的 JSON 数据结构实现为值。
为了说明,这里是我可以提出的代码段:
typedef map<string, string> str2str;
typedef map<string, str2str> str2str2str;
...
typedef map<string, str2map_or_str> str2map_or_str;
C++ 中的惯用方法是什么?
一种简单的方法是使用struct
具有 astring
和递归的 a map
。
struct ParseData;
using MapValue = std::map<std::string, ParseData>;
struct ParseData
{
std::string string_value;
MapValue map_value;
};
然后,您可以使用ParseData
对象或MapValue
对象来捕获解析的数据。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句