对包含空字符串数组的json进行反序列化会在Delphi 10.3.2中生成AV,而10.3.1不会。
考虑字符串s,其中包含:
s := { "array": [], "name": "my-test" }
和对象:
type
TTestObject = class(TObject)
private
// FArray: array of string;
// FName: string;
end;
然后
with TJSON.JsonToObject<TTestObject>(s) do
try
ShowMessage('OK');
finally
Free;
end;
产生AV。 取消注释私有字段FArray或在json字符串中向数组添加元素会导致正确的反序列化。 取消注释私有字段FName没什么区别。
我在俯视什么吗?