我偶然发现了一些与C ++ 11 PEG库PEGTL一起出现的行为。不幸的是,我无法在库函数/模板之外重现这种行为。这发生在Netbeans
最小的例子如下:
l=[]
for x ,_ in data.iterrows():
l.append(expand_onerow(data.loc[[x],:], ndaysback = 2, nhdaysfwd = 2))# query out each row by using their index(x is the index for each row) and append then into a empty list
pd.concat(l)# concat the list to one df at the end
TAOCPP_PEGTL_ISTRING是一个宏定义,扩展为istring<>,因此TAOCPP_PEGTL_ISTRING(“foo”)与istring<'f','o','o'>相同。 GCC没有问题,但是一旦我尝试使用这个宏,就会说
include <tao/pegtl.hpp>
using namespace tao::TAOCPP_PEGTL_NAMESPACE;
struct foo : istring<'f','o','o'> {};
struct bar : TAOCPP_PEGTL_ISTRING("foo") {};
struct foo2 : istring<'f','o','o'> {};
并且每一行都会出错。
这是我的系统/ Netbeans信息:
unexpected token: {
unexpected token: }
unknown identifier bar