|
Boost Users : |
Subject: [Boost-users] Complier errors using property_tree 5 minute tutorial
From: Bill Moo (cppsysdev_at_[hidden])
Date: 2011-08-14 06:54:54
Hello Users,
I am using boost 1.47.0's property_tree on Windows 7 x64 using the Intel
Compiler v 12.0.1029.2010 and having followed the 5 Minute Tutorial to the
letter I get errors at complie time.
This is my header file :
#ifndef INFOSTRUCT_HPP
#define INFOSTRUCT_HPP
#include <string>
struct INFO
{
unsigned m_Type ;
std::string m_Desc ;
std::string m_User ;
std::string m_Pass ;
std::string m_Server ;
void load(const std::string & fileName) ;
void save(const std::string & fileName) ;
} ;
#endif // INFOSTRUCT_HPP
and this is the .cpp file:
#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/xml_parser.hpp>
#include "infoStruct.hpp"
void INFO::load(const std::string &fileName)
{
boost::property_tree::ptree pTree ;
boost::property_tree::xml_parser::read_xml(fileName, pTree) ;
m_Type = pTree.get("Database.Driver", 0) ;
m_Pass = pTree.get < std::string>("Database.Pass") ;
}
void INFO::save(const std::string &fileName)
{
return ;
}
But when I compile this I get lots and lots of compiler errors this
most significant of those being:
..\..\Includes\boost/property_tree/detail/ptree_implementation.hpp(52):
error #501: argument of type "const std::string std::_Pair_base<const
std::string, boost::property_tree::basic_ptree<std::string,
std::string, std::less<std::string>>>::*" is incompatible with
template parameter of type "const std::string std::pair<const
std::string, boost::property_tree::basic_ptree<std::string,
std::string, std::less<std::string>>>::*"
&value_type::first>,
^
detected during:
instantiation of class "boost::property_tree::basic_ptree<Key, Data,
KeyCompare>::subs [with Key=std::string, Data=std::string,
KeyCompare=std::less<std::string>]" at line 182
instantiation of "boost::property_tree::basic_ptree<Key, Data,
KeyCompare>::basic_ptree() [with Key=std::string, Data=std::string,
KeyCompare=std::less<std::string>]" at line 8 of
"..\DataFactory\infoStruct.cpp"
With the line in question being : boost::property_tree::ptree pTree ;
I honestly cannot see where or what I am doing wrong, so I am hoping
someone here can help me.
-- Bill
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net