Использую стандартную библиотеку.
Вопрос про уничтожение созданных объектов JSON.
Вот пример кода:
var JSONArr: TJSONArray;
JSONObj: TJSONObject;
Count : Integer;
begin
Result := '';
if Specimen.DataController.RecordCount = 0 then Exit;
JSONArr := TJSONArray.Create;
try
with Specimen.DataController do
for Count := 0 to RecordCount - 1 do
begin
// Создаём нужный объект.
JSONObj := TJSONObject.Create;
JSONObj.AddPair(TJSONPair.Create(fnMEDX_SpecimenCode, SpCode(Count)));
JSONObj.AddPair(TJSONPair.Create(fnMEDX_Label, SpLabel(Count)));
..
..
// Сохраняем объект в массив.
JSONArr.AddElement(JSONObj);
end;
Result := JSONArr.ToString;
finally
JSONArr.Free;
end;
JSONArr.Free - тут понятно, освобождаю... вопрос нужно ли после каждого "JSONArr.AddElement(JSONObj)" делать JSONObj.Free? или данное исполнение и json объект уничтожать не надо, память высвобождается сразу по завершению процедуры...