配置文件:
4 name = "Books, Movies & More";
5
7 inventory =
8 {
9 books = ( { title = "Treasure Island";
10 author = "Robert Louis Stevenson";
11 price = 29.99;
12 qty = 5; },
13 { title = "Snow Crash";
14 author = "Neal Stephenson";
15 price = 9.99;
16 qty = 8; }
17 );
}
查询:
查询上面配置数据如:
string name = cfg.lookup("name");
流程:

其中:
通过struct config_t,获取config_setting_t *root,然后调用下面函数
这里会看到,获取顶层后查询,如果是嵌套的话,查询会更慢
1215 config_setting_t *config_setting_lookup(config_setting_t *setting,
1216 const char *pat

博客内容讨论了配置文件的结构,特别是`config_setting_lookup`函数在查询配置时的性能问题。由于嵌套查询导致的性能下降,作者建议对特殊字段进行单独提取以提高查询效率。代码示例展示了配置数据的结构,包括`name`和`inventory`等字段,以及搜索这些字段的实现细节。整个解析过程涉及到链表遍历,对查找性能有一定影响。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



