boost :: program_options - 如何处理INI文件中具有相同名称的多个部分

Ϲοδ*_*διϲ 8 c++ ini configuration-files boost-program-options

在如下配置中; 有没有办法处理各个部分.

我正在寻找一种方法来以可靠的方式验证下面的各个"服务器"部分.

[basic]
number_of_servers=3

[server]
ip=10.20.30.40
password=sdfslkhf    

[server]
ip=10.20.30.41
password=sdfslkhf

[server]
ip=10.20.30.42
password=sdfslkhf

[server]
password=sdfslkhf

[server]
ip=10.20.30.42
Run Code Online (Sandbox Code Playgroud)

ice*_*ime 13

boost::program_options用于解析INI文件时,选项名称必须以其封闭的节名称作为前缀.

换句话说,部分是选项'标识符'的一部分,但我认为您无法识别给定变量属于哪个部分server.ip(因此,哪个部分是关联的server.password).

我认为你应该考虑Boost.PropertyTree(它也支持INI文件解析)来完成这项任务.