致力于将一些C ++代码从Linux迁移到Windows。该代码使用boost 1.4.2,但它仍然无法构建升压模块。基本上,每个boost hpp文件恰好包含“namespace boost”错误:
error C2143: syntax error : missing ';' before 'namespace'
知道可能导致这种情况的原因吗?
答案 0 :(得分:5)
在包含Boost标头之前丢失;
可能是原因造成的。以下代码产生此类错误:
struct X {} // << ; lost here
#include <boost/shared_ptr.hpp>
这个小代码给出了以下错误:
boost/config/suffix.hpp(460) : error C2143: syntax error : missing ';' before 'namespace'
答案 1 :(得分:0)
您是否尝试在第一行包含这些提升标题?如果他们以这种方式编译好,那么在他们之前包含的一个标题中可能缺少;
。