C++ C7608:使用ranges::to_向量时,原子约束应为常量表达式

C++ C7608:使用ranges::to_向量时,原子约束应为常量表达式,c++,visual-c++,c++20,range-v3,nlohmann-json,C++,Visual C++,C++20,Range V3,Nlohmann Json,编辑:我发布在range-v3 GitHub上 所以,我尝试使用range-v3库。但是,当我编译代码时,它会以错误C7608停止。 以下是一个相关的片段: #include“json/single_include/nlohmann/json.hpp” #包括“range-v3/include/range/v3/all.hpp” 类myClass { 私人: nlohmann::json; 公众: auto getJSON()常量{return json_;} }; int main() { s

编辑:我发布在range-v3 GitHub上

所以,我尝试使用range-v3库。但是,当我编译代码时,它会以错误C7608停止。 以下是一个相关的片段:

#include“json/single_include/nlohmann/json.hpp”
#包括“range-v3/include/range/v3/all.hpp”
类myClass
{
私人:
nlohmann::json;
公众:
auto getJSON()常量{return json_;}
};
int main()
{
std::映射模式;
auto getJSON=[](const auto&item){return item.getJSON();};//返回一个nlohmann::json
名称空间rv=范围::视图;
std::vector jsons=patterns_124;rv::values|rv::transform(getJSON)
|范围::到_向量;
返回0;
}
编译器输出:

C:\IT\code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(228):错误C7608:原子约束应为常量表达式
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(243):注意:请参阅正在编译的变量模板“bool convertible\u to\u cont\u cont\u impl\u frag”的参考
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(257):注意:请参阅正在编译的变量模板“bool converable\u to\u cont\u cont\u impl\u”的参考
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(268):注意:请参阅正在编译的变量模板“bool converable\u to\u cont\u cont\u impl\u”的参考
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(278):注意:请参阅正在编译的变量模板“bool convertible\u to\u cont\u cont”的参考
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(296):注意:请参阅正在编译的变量模板“bool convertible\u to\u cont\u cont”的参考
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(365):注意:请参阅正在编译的变量模板“bool converable\u to\u cont\u和\u not\u cont\u cont\u cont”的参考
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(228):注意:请参阅正在编译的变量模板“bool invocable”的参考
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(243):注意:请参阅正在编译的变量模板“bool convertible\u to\u cont\u cont\u impl\u frag”的参考
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(257):注意:请参阅正在编译的变量模板“bool converable\u to\u cont\u cont\u impl\u”的参考
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(268):注意:请参阅正在编译的变量模板“bool converable\u to\u cont\u cont\u impl\u”的参考
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(278):注意:请参阅正在编译的变量模板“bool convertible\u to\u cont\u cont”的参考
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(296):注意:请参阅正在编译的变量模板“bool convertible\u to\u cont\u cont”的参考
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(365):注意:请参阅正在编译的变量模板“bool converable\u to\u cont\u和\u not\u cont\u cont\u cont”的参考
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(228):注意:请参阅正在编译的变量模板“bool invocable”的参考
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(243):注意:请参阅正在编译的变量模板“bool convertible\u to\u cont\u cont\u impl\u frag”的参考
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(257):注意:请参阅正在编译的变量模板“bool converable\u to\u cont\u cont\u impl\u”的参考
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(268):注意:请参阅正在编译的变量模板“bool converable\u to\u cont\u cont\u impl\u”的参考
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(278):注意:请参阅正在编译的变量模板“bool convertible\u to\u cont\u cont”的参考
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(296):注意:请参阅正在编译的变量模板“bool convertible\u to\u cont\u cont”的参考
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(365):注意:请参阅正在编译的变量模板“bool converable\u to\u cont\u和\u not\u cont\u cont\u cont”的参考
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include/libs/json/single\u include/nlohmann/json.hpp(22646):注意:请参阅正在编译的类模板实例化“nlohmann::basic\u json”
C:\Program Files(x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\filesystem(2087):注意:请参阅正在编译的类模板实例化“std::chrono::time\u point”
C:\Program Files(x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\xstring(1743):注意:请参阅正在编译的类模板实例化“std::basic_string_view”
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(228):错误C2131:表达式的计算结果不是常量
C:\IT\Code\u perso\Cathedral\u Assets\u Optimizer\include\libs\range-v3\include\range/v3/range/conversion.hpp(228):注意:读取未初始化的符号导致失败
C:\I