您的位置:首页 > 其它

“boost”: 不是类或命名空间名称,该怎么解决

2013-12-11 16:58 253 查看
boost”: 不是类或命名空间名称

boost已经安装了。

但是调用boost::regex_match

还是“boost”: 不是类或命名空间名称

也在头文件上边加了

using namespace boost;

还是不行啊。

------解决方案--------------------

把 #include "stdafx.h" 放在最前面

------解决方案--------------------

#include regex_match对于的头文件了吗 boost include目录 lib目录正确配置到ide里吗

------解决方案--------------------

错误信息解释如下

C/C++ code
错误消息
“symbol”: 不明确的符号

编译器无法确定要引用哪个符号。

如果头文件包含 using Directive (C++),并且后续的头文件已使用 #include 并包含一个也位于 using 指令中指定的命名空间中的类型,则会出现 C2872 错误。仅在使用 #include 指定所有头文件后,才能指定 using 指令。

有关 C2872 的更多信息,请参见 http://support.microsoft.com/default.aspx?scid=kb;en-us;316317。 
下面的示例生成 C2872:

复制代码
// C2872.cpp
namespace A {
int i;
}

using namespace A;
int i;
int main() {
::i++;   // ok
A::i++;   // ok
i++;   // C2872 ::i or A::i?
}

------解决方案--------------------
Project Settings->C/C++
Additional include directories:(附加包含目录)
增加:BOOST所在目录(d:\库\boost_1_46_1)

仅供参考

------解决方案--------------------

探讨
在上边引入 #include"boost/regex.hpp"

后,报错变为如下:
:\yf\lib\webanalyer\htmltostruct.h(406) : error C2872: “exception”: 不明确的符号
1> 可能是“d:\库\boost_1_46_1\boost\exception\exception.hpp(194) : boost::exception…
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐