我有一个序列化为 JSON 的任务:
{
text: "Some task",
status: 1
}
我在Serialize
命名空间中使用这个函数:
Task parseTask(std::string task) {
Json::Value root;
Json::Reader reader;
if(reader.parse(task, root, false)) {
std::string text = root["text"].asString();
int status = root["status"].asInt();
Task result(text);
if(status == 1) result.setCompleted();
return result;
}
}
我调用函数如下:
Task t = Serialize::parseTask("{ text: \"Some Task\", status: 1 }");
-ljsoncpp
并使用选项进行编译。但是我得到:
terminated by signal SIGSEGV (Address boundary error)
我一直在浏览 JsonCpp 文档,但似乎找不到我的代码有什么问题。