提问人:Bambino 提问时间:6/14/2017 最后编辑:Bambino 更新时间:6/26/2017 访问量:306
复制将 json-Container 分配给 vector
Copy assign json-Container to vector
问:
我正在尝试将 -Container 从现代 C++ 的 JSON 库转换为 ,但它不适用于 -运算符(我收到编译器错误“多个运算符”=“与这些操作数匹配”)。json
vector
=
最小工作示例:
#include "json.hpp"
using json = nlohmann::json;
using namespace std;
int main()
{
vector<double> v = { 0 , 10 , 20 , 100 };
json j(v);
vector<double> copy = j;
vector<double> copyWithAssign;
//copyWithAssign = j; // more than one operator "=" matches these operands
return 0;
}
您可以在此处找到 json.hpp。
使用构造函数,我可以写,但这似乎很愚蠢。必须有一种直接的方法来分配给以前已经声明和构建过的。vector<double> copy = j;
copyWithAssign = copy;
j
vector
我认为强制转换可能会有所帮助,因为编译器无法决定使用哪种类型。我试过了,但这没有帮助。(vector<double>)j
答:
1赞
Bambino
6/26/2017
#1
一个人应该使用
copyWithAssign = j.get<vector<double>>();
感谢 theodelrieu,他在这里发布了这个答案。
评论