我有这样的C++代码示例:转换,从 '为size_t' 到 'rapidjson ::的SizeType'
void test()
{
rapidjson::Document doc;
doc.SetObject();
const std::string source = "The quick brown fox jumps over the lazy dog";
rapidjson::Value source_val;
source_val.SetString(source.c_str(), source.length(), doc.GetAllocator());
}
在编译时,在x64平台上,我得到这样的警告:
警告C4267:“参数”:从
size_t
转换rapidjson::SizeType
,数据
的可能损失我该如何正确从字符串的转换长度(size_t
)以rapidjson SizeType?
我知道一个警告不是错误,但我可以摆脱这个警告吗? – mtb
是的,static_cast是一个解决方案,但我认为定义RAPIDJSON_NO_SIZETYPEDEFINE的rapidjson文档更加优雅。谢谢您的回答。 – mtb
请记住,实际上使用这么长的字符串将使xml在32位系统上无法解析。 – user2079303