web::json::value obj;
obj[JSONKeyRequest] = web::json::value::string(JSONValueRequest);
我创建一个JSON值,并为其插入一些键和值。 然后我在另一个函数中得到这个obj,试图检查obj [JSONKeyRequest]是否等于" abc",但它没有工作:
web::json::value getObj = this->GetSendObj();
if (getObj[JSONKeyRequest] == web::json::value::string(L"abc"))
{
}
然而,VC保持显示:"错误:没有运算符[]匹配此操作数,操作数类型是const web :: json :: value [std :: wstring] 那么,我怎样才能根据键获取值并将值与字符串进行比较?
答案 0 :(得分:0)
首先,错误告诉你参数应该是什么。
json 需要 wstring 参数,如果不是wstring,则可以输入文字。
obj[L"JSONKeyRequest"] = web::json::value(L"JSONValueRequest");
应该有用。
其次,为了进行比较,首先尝试声明 wstring ,然后比较
wstring temp = "abc";
if (getObj["JSONKeyRequest"] == temp)
{
}
这应该有用。
答案 1 :(得分:0)
if (getObj.at(key) == web::json::value::string(L"abc"))
这个适合我。