LINUX.ORG.RU

Ищу библиотеку для работы с конфигурацией в C++

 


1

2

Что-бы хотелось?
Хотелось-бы библиотеку которая не просто парсер и приделанная к нему загружалка-выгружалка данных из файла. Хотелось-бы в первую очередь либу которая предоставляет хранилище для значений в памяти, и которая может заполнять это хранилище данными из файла(писать обратно - опционально).

К примеру, есть некоторый набор конф-параметров, которые использует класс в своей работе. Я хочу чтобы в классе были жёстко указаны переменные, из которых берутся параметры работы. Но была возможность «подбросить» инстансу этого класса другой экземпляр конфигурации, с измененными параметрами. Или создать два инстанса одного класса с разными параметрами и протестировать их совместную работу.

Так как это конфигарация то хранилище, я полагаю, должно быть:
1. С выделением групп (как в conf-файле)
2. С древовидной структурой



Последнее исправление: dmitryalexeeff (всего исправлений: 1)

Лично мне, когда понадобилось, было лень искать и я свелосипедил себе такую либу за десять минут, блого писать мизер: древовидное хранилище ключ-значение + читалка/писалка этого в файл.

staseg ★★★★★
()

Я хочу чтобы в классе были жёстко указаны переменные

нипанятно. в виде аттрибутов класса или в виде ключей и оператора [] ? если в виде аттрибутов то смахивает на банальную сериализацию, глянь какой нить http://www.boost.org/doc/libs/1_53_0/libs/serialization/doc/index.html

1. С выделением групп (как в conf-файле)

2. С древовидной структурой

вложенные группы?

x0r ★★★★★
()

Если проект использует Qt, то есть масса вариантов: QSettings, QDomDocument, QJsonDocument.
Свою реализацию тоже можно свелосипедить максимум за пару часов.

m0rph ★★★★★
()

Может быть, слишком толсто, но... QSettings, не?

bvn13 ★★★★★
()

В кедах например есть ksettings да еще и стандартный диалог для отображения в приложении.

mio ★★
()
Ответ на: комментарий от x0r

Не юзай boost::serialization - козлёночком станешь. В новой версии софта понадобится новый буст и опа - конфиги несовместимы.

Pavval ★★★★★
()
Ответ на: комментарий от Pavval

если уж решать через сериализацию, то проще заюзать JSon. Цепляется быстро и понятно и для использования в проекте достаточно двух файликов от добрых людей.

Sakura
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.