DEN
San
Ключевая фраза там была "медленно", если не поняли
>[i]"По-бустовски" - это значит качественный дизайн, простой и удобный интерфейс, расширяемость, типобезопасность, безопасность с точки зрения исключений, а также семантика, наиболее естественная с точки зрения сложившихся практик и традиций языка.[/i]
Boost - какаха :)
"По-бустовски" - совсем не лестная характеристика.
> Boost - какаха :)
Да ну уж, если без фанатизма к нему относиться, то вполнее много полезных вещей там использовать можно.
Конишуа
> Boost - какаха :)
В детском саду мне тоже так казалось.
> "По-бустовски" - совсем не лестная характеристика.
Это твое личное мнение?
DEN
>Это твое личное мнение?
Это следствие из пункта #1.
Разумеется, то что бустовские изыски - не от хорошей жизни, а от ограниченности языка, и от того, что получилось в итоге, лучше держаться подальше - это мое личное мнение.
Нас таких много в детском саду, да.
Конишуа
гг лол бб
Я говорил про фанатизм... Чую Ден как раз-таки представитель таковых)
Юзайте libxml ;-)
Еще Json как вариант. Мне вот лично он больше по душе, чем XML. Варианты исполнения библиотек на оф. сайте нотации, который гуглится даже везунчиками.
http://code.google.com/p/pugixml/ MIT лицензия, радость.
В любом случае над XML будет скорее всего висеть собственная обвязка. Скорее всего кодогененная, скорее всего ей будет достаточно событийного SAX парсера.
Или фрагмента DOM дерева в пределах одного объекта. Такой стековый DOM.
Все что надо - это собрать все пары{ аттрибуты : значения } или по вкусу { элемент : текст} в пределах текущего тега и залукапить относительно имен полей класса. Еще нужны фабрики по именам объектов.
В C++ ( без рефлекшна ) это все очень большая работа. Кодоген нормально не написать, поля класса нормально не отрефлектить.
Основная сложность будет тут. В построении объектной системы. А не в выборе парсера.
При использовании всяких std::stringstream и компании легко попасться на удочку обещаний "процессоры быстрые, диски медленные, наша дребедень всяко быстрее диска". Не быстрее диска. Сильно медленнее.
раз уж о кодегенерации..
еще есть ASN.1
описание и серилизация объектов в бинарную(BER. для релиза) или XML-форму(XER. для дебага|релиза)
формат расширяемый, энкодеры, в основном, платные (хотя за 5 лет может что и изменилось)
IronPeter
+1 к pugixml
еще есть rapidxml
IronPeter
> http://code.google.com/p/pugixml/ MIT лицензия, радость.
о! риальне радость. крутой парсер!
Тема в архиве.