Ruu*_*oef 2 c++ rapidjson c++17
我是 C++ 新手,遇到了一个问题。我正在使用 rapidJSON 创建 JSON 文档。
void setKeyValue() {
Value obj(kObjectType);
Value key("key");
Value val(42);;
obj.AddMember(key, val, d.GetAllocator());
}
Run Code Online (Sandbox Code Playgroud)
按预期工作。但是当我尝试替换对 key 的调用以使其使用传入的参数时,如下所示:
void setKeyValue(string myKey) {
Value obj(kObjectType);
Value key(myKey);
Value val(42);;
obj.AddMember(key, val, d.GetAllocator());
}
Run Code Online (Sandbox Code Playgroud)
Visual Studio 中的myKey 会Value key(myKey)出现一个红色卷曲的下标,内容如下:
造成这种情况的原因是什么以及如何解决?
默认情况下,您不会获得支持std::string。rapidJSON 要求您指定您想要的std::string支持。
#define RAPIDJSON_HAS_STDSTRING 1
Run Code Online (Sandbox Code Playgroud)
只有这样,您使用的构造函数才有效:
GenericValue (const std::basic_string< Ch > &s, Allocator &allocator)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1869 次 |
| 最近记录: |