当前位置: 代码迷 >> 综合 >> error: ambiguous overload for ‘operator[]’ in ‘value.Json::Value::operator[](((const char*)“command_
  详细解决方案

error: ambiguous overload for ‘operator[]’ in ‘value.Json::Value::operator[](((const char*)“command_

热度:20   发布时间:2024-01-04 03:42:32.0

原文:https://blog.csdn.net/weixin_28748799/article/details/80668489

Json中包含数组的情况下,需要输出数组中内容,用以下方式

cout<<value[“command_set”][0][“cmd”].asString()<<endl;

结果报错:error: ambiguous overload for ‘operator[]’ in ‘value.Json::Value::operator[](((const char*)"command_

找了好多资料,都不能解决,直到意外的看到一篇帖子,贴上原地址:

https://stackoverflow.com/questions/18901781/jsoncpp-ambiguous-overload-only-in-windows?answertab=oldest#tab-top

错误原因是这里的value的参数同时包含string和int,识别不出来,改成value[“command_set”][0u][“cmd”]就能解决了

  相关解决方案