我正在嘗試使用boost屬性樹編譯自定義linux。我在文件json_parser_read.hpp(行105)上有錯誤編譯錯誤提升屬性樹C++
struct a_literal_val
{
context &c;
a_literal_val(context &c): c(c) { }
void operator()(It b, It e) const
{
BOOST_ASSERT(c.stack.size() >= 1);
c.stack.back()->push_back(std::make_pair(c.name, Str(b, e)));
c.name.clear();
c.string.clear();
}
};
這段代碼無法編譯。 輸出爲:/path/to/boost/property_tree/detail/json_parser_read.hpp:105: error: no matching function for call to 'boost::property_tree::basic_ptree<std::basic_string<char>, std::basic_string<char> >::push_back(std::pair<std::basic_string<char>, std::basic_string<char> >)' c.stack.back()->push_back(std::make_pair(c.name, Str(b, e))); ^
我使用升壓v1.49
我與其他電腦進行測試,並將其與版本編譯正確1.58
感謝您的幫助。
什麼是'context'?什麼是'c.stack'? 'c.stack.back()'返回什麼?請創建一個[最小,完整和可驗證示例](http://stackoverflow.com/help/mcve)向我們展示。當然,請[閱讀如何提出好問題](http://stackoverflow.com/help/how-to-ask)。 –
http://idownvotedbecau.se/beingunresponsive –