Доступ к имени поля Boost Fusion Map

Мы пытались использовать некоторые из методов Boost Fusion для записи обычной структуры c в файл. XML-файл кажется хорошим способом сбора данных и делает его совместимым с другими инструментами или редактируемым вручную. Кажется, что у меня почти есть это, но что-то фундаментальное, кажется, отсутствует. Я'я использую что-то очень похожее на то, чтоs на странице быстрого запуска boost :: fusion:http://www.boost.org/doc/libs/1_54_0/libs/fusion/doc/html/fusion/quick_start.html, В качестве примечания я внимательно посмотрел здесь и на повышениес документацией, но никто, кажется, не обращается к имени поля.

struct print_xml
{
    template 
    void operator()(T const& x) const
    {
        std::cout
            < ''
            ;
    }
};

Я хочу использовать его следующим образом:

BOOST_FUSION_ADAPT_STRUCT(
    myStructType,
    (double, val1)
    (double, val2)
    (char, letter)
    (int, number)
    )    
myStructType saveMe = { 3.4, 5.6, 'g', 9};
for_each(saveMe, print_xml());

В других случаях я определял структуру следующим образом, но все же не повезло:

namespace fields{
    struct val1;
    struct val2;
    struct letter;
    struct number;
}

typedef fusion::map<     fusion::pair,
    fusion::pair,
    fusion::pair,
    fusion::pair > myStructType;

Я знаю, что сначала нет члена, но на самом деле должно быть, чтобы получить доступ к имени поля! Код, который у меня работает, отлично работает с x.second, но потом нея могу получить то, что мне нужно, чтобы получить имя поля. Как еще я могу это сделать? Спасибо!

Ответы на вопрос(1)

Ваш ответ на вопрос