Skip to content

Perlas de programación: boost::property_tree

9 abril 2010

Tres líneas, eso es lo que se necesita para abrir, parsear y leer un valor de un archivo de configuración con boost::property_tree.

[sonido]
limite=1.5e16
#include <iostream>

using std::cout;
using std::endl;

#include "boost/property_tree/ptree.hpp"
#include "boost/property_tree/ini_parser.hpp"

int main(int argc, char *argv[])
{
    boost::property_tree::ptree arbol;
    read_ini("config.ini", arbol);
    float lim = arbol.get<float>("sonido.limite");

    cout << "Límite: " << lim << endl;
    return 0;
}

Magia.

Lástima que sea una librería que entró en Boost en 1.41, y en Ubuntu aún van por la 1.40 (bueno, y de hecho la metalibrería libboost-dev aún apunta a la 1.38… de pena). Property tree depende de las librerías base de boost y de boost::serialization.

One Comment leave one →
  1. 9 abril 2010 18:43

    Precisamente ando buscando algo así para python, para guardar la configuración del juego (resolución de pantalla, fullscreen o windowed, etc).

    PD: Lo que alegra encontrar perlas como esa, ¿eh? son cosas que hacen que vuelvas a confiar en el ser humano😀

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: