我对模板还很陌生。我需要将库从c ++ 17转换为c ++ 14,以适合我的项目。除此警告外,我已成功完成所有代码:
warning: fold-expressions only available with -std=c++1z or -std=gnu++1z
但是问题是,如果在c ++ 17中引入了折叠表达式,为什么会发出警告?如果我不更改而保留代码,会有什么含义?
发出此警告的行是:
(check_param_type<typename std::decay<ParamTypes>::type>(index, params[index], GetType(type<typename std::decay<ParamTypes>::type>())), ...);
有问题的库是json-rpc-cxx,文件和行:include/jsonrpccxx/typemapper.hpp:93:143
非常感谢您的帮助。
您在c ++ 14中编译时已使用了c ++ 17中的功能。因此,他们警告您不能这样做。就这么简单!