提升xpressive错误

时间:2010-08-18 18:14:10

标签: c++ boost xpressive

使用Boost xpressive(最新版本)的这个简单示例抛出了错误:Access violation reading location 0x000000。 regex_match上发生错误。这必须是简单的,但我一直看着它,直到我疯了。

为什么这不起作用?

using namespace boost::xpressive;

std::string hello( "Apple Orange_" );

const boost::xpressive::sregex rex = boost::xpressive::sregex::compile("(\\w+)\\s(\\w+)_"); 

boost::xpressive::smatch what;

if( regex_match( hello, what, rex ) )
{
  std::string s1 = what[0]; // whole match
  std::string s2 = what[1]; // first capture
}

0 个答案:

没有答案