У меня есть формат файла конфигурации, который я надеялся реализовать с помощью параметров программы Boost (поскольку я использовал эту библиотеку раньше), но мне каким-то образом нужно реализовать такие блоки:
label = whatever
depth = 3
start
source = /etc
dest = /tmp/etc/
end
start
source = /usr/local/include
dest = /tmp/include
depth = 1
end
Я прочитал в документации, что я может иметь [sections]
, поэтому я сначала задумался об этом:
label = whatever
depth = 3
[dir]
source = /etc
dest = /tmp/etc/
[dir]
source = /usr/local/include
dest = /tmp/include
depth = 1
Но если я правильно понял, dir
становится частью имени переменной, поэтому дубликаты невозможны, и это не сработает. Тогда я задумался о переносе source
на имя раздела:
label = whatever
depth = 3
[/etc]
dest = /tmp/etc/
[/usr/local/include]
dest = /tmp/include
depth = 1
Это кажется разумным подходом? Мне интересно, как я перебираю список разделов, когда я заранее не знаю названия разделов?
Или есть лучший способ использовать библиотеку параметров программы для достижения этой цели?