编辑回答评论和关闭问题:
实际上没有问题:该行使eclipse分析器显示“ghost error”,但g ++可以正确处理它。我之前在使用boost和一些复杂的模板元编程结构时遇到了这个问题。
我没有注意到它,因为它与其他错误混在一起。抱歉这个愚蠢的问题,谢谢你的帮助。
P.S。:请注意 - 在编程10小时后不要试图解决这些问题
- 编辑结束 -
我在32位Ubuntu 12.04(精确穿山甲)系统中安装了boost库(版本1.52)。
我遵循installation instructions中的标准程序,该程序涉及执行“bootstrap”脚本,然后调用b2。一切都很好:没有错误,没有跳过目标。
根据g ++,我发现函数boost::assign::tuple_list_of
“无法解析”。我在以下行中使用它(可以安全地忽略asignee):
#include <vector>
#include "boost/assign/list_of.hpp"
std::vector<boost::tuple<int,int> > vec = boost::assign::tuple_list_of(0,0)(2,2)(4,0)(6,2);
我查看了文件[include] boost / assign / list_of.hpp,并且对“tuple_list_of”的唯一引用位于以下宏中:
#define BOOST_PP_LOCAL_MACRO(n) \
template< class U, BOOST_ASSIGN_PARAMS1(n) > \
inline assign_detail::generic_list< tuple<U, BOOST_ASSIGN_PARAMS4(n)> > \
tuple_list_of(U u, BOOST_ASSIGN_PARAMS2_NO_REF(n) ) \
{ \
return assign_detail::generic_list< tuple<U, BOOST_ASSIGN_PARAMS4(n)> >()( tuple<U,BOOST_ASSIGN_PARAMS4(n)>( u, BOOST_ASSIGN_PARAMS3(n) )); \
} \
有关此行为的任何线索?我错过了一些“基本”步骤吗?