但是调用boost::regex_match
还是“boost”: 不是类或命名空间名称
也在头文件上边加了
using namespace boost;
还是不行啊。
6 个解决方案
#1
把 #include "stdafx.h" 放在最前面
#2
#include regex_match对于的头文件了吗 boost include目录 lib目录正确配置到ide里吗
#3
在上边引入 #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”
1> 或 “d:\program files\microsoft visual studio 9.0\vc\include\exception(95) : std::exception”
后,报错变为如下:
:\yf\lib\webanalyer\htmltostruct.h(406) : error C2872: “exception”: 不明确的符号
1> 可能是“d:\库\boost_1_46_1\boost\exception\exception.hpp(194) : boost::exception”
1> 或 “d:\program files\microsoft visual studio 9.0\vc\include\exception(95) : std::exception”
#4
错误信息解释如下
错误消息
“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?
}
#5
Project Settings->C/C++
Additional include directories:(附加包含目录)
增加:BOOST所在目录(d:\库\boost_1_46_1)
仅供参考
Additional include directories:(附加包含目录)
增加:BOOST所在目录(d:\库\boost_1_46_1)
仅供参考
#6
别using namespace boost;
然后boost::regex_match用
#1
把 #include "stdafx.h" 放在最前面
#2
#include regex_match对于的头文件了吗 boost include目录 lib目录正确配置到ide里吗
#3
在上边引入 #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”
1> 或 “d:\program files\microsoft visual studio 9.0\vc\include\exception(95) : std::exception”
后,报错变为如下:
:\yf\lib\webanalyer\htmltostruct.h(406) : error C2872: “exception”: 不明确的符号
1> 可能是“d:\库\boost_1_46_1\boost\exception\exception.hpp(194) : boost::exception”
1> 或 “d:\program files\microsoft visual studio 9.0\vc\include\exception(95) : std::exception”
#4
错误信息解释如下
错误消息
“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?
}
#5
Project Settings->C/C++
Additional include directories:(附加包含目录)
增加:BOOST所在目录(d:\库\boost_1_46_1)
仅供参考
Additional include directories:(附加包含目录)
增加:BOOST所在目录(d:\库\boost_1_46_1)
仅供参考
#6
别using namespace boost;
然后boost::regex_match用