gpt4 book ai didi

c++ - MinGW下的Boost::Xpressive编译拼图

转载 作者:行者123 更新时间:2023-11-30 01:32:28 28 4
gpt4 key购买 nike

第一次切换到 GCC,我对编译器在这里告诉我的内容感到有点困惑。本质上,它的行为就像 boost::xpressive::wsregex 没有定义(我相信)。

相关代码如下:

#include "criterion.h"
#include <string>
#include <boost/xpressive/xpressive.hpp>

//More lines of code omitted here

class perlRegex : public regexClass
{
private:
std::wstring regexString;
boost::xpressive::wsregex regex; // This is the line complained about
public:
unsigned __int32 getPriorityClass() const;
BOOL include(fileData &file) const;
unsigned int directoryCheck(const std::wstring& /*directory*/) const;
std::wstring debugTree() const;
perlRegex(const std::wstring& inRegex);
};

这里是错误:

regex.h:46: error: using-declaration for non-member at class scope
regex.h:46: error: expected `;' before "regex"

我在这里感到困惑的是,我正在声明一个成员,但它却提示我在其他地方使用了一个成员。

我是否忘记了 #include 一些东西?

提前致谢,比利3

最佳答案

cygwin 和mingw 不支持宽字符,所以xpressive 也不行。请参阅 xpressive_fwd.hpp 中的以下内容:

#if defined(BOOST_NO_CWCHAR) | \
defined(BOOST_NO_CWCTYPE) | \
defined(BOOST_NO_STD_WSTRING)
# ifndef BOOST_XPRESSIVE_NO_WREGEX
# define BOOST_XPRESSIVE_NO_WREGEX
# endif
#endif

宏 BOOST_NO_CWCHAR、BOOST_NO_CWCTYPE 和 BOOST_NO_STD_WSTRING 由 boost 的 config.hpp 头文件为您的 platcorm/compiler/std-library 自动定义。对不起。

将来,将提升问题发布到提升用户列表中,您将获得更好的结果。

--埃里克·尼布勒BoostPro计算www.boostpro.com

关于c++ - MinGW下的Boost::Xpressive编译拼图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1616855/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com