СП
Size: a a a
СП
AS
KB

RS
RS
TFPGObjectList https://github.com/Al-Muhandis/fp-youtube-dl/blob/7a6c4be98ff0e5f9f4c5d8aaee1c26f062560b6f/youtubedl.pas#L70 Почти тоже, что TFPGList, но тип элемента это только объекты.AS

Y
= 0, еслиб nil, вроде бы ошибка должна появится в момент получения размера массива.Y
i_prof если =0 то в цикле делать нечегоСП
TFPGObjectList https://github.com/Al-Muhandis/fp-youtube-dl/blob/7a6c4be98ff0e5f9f4c5d8aaee1c26f062560b6f/youtubedl.pas#L70 Почти тоже, что TFPGList, но тип элемента это только объекты.FFormats:=TFormatList.Create; создание есть только для поля. Но свойство имеет тот же тип, что и поле TFormatList. Для свойства нет необходимости в .Create?М
М
Ш
= 0, еслиб nil, вроде бы ошибка должна появится в момент получения размера массива.A
Ш
Y
FFormats:=TFormatList.Create; создание есть только для поля. Но свойство имеет тот же тип, что и поле TFormatList. Для свойства нет необходимости в .Create?Y
FFormats то создавать еще раз не надо.Y
FFormats а старый потеряется - соответственно утечка памяти.RS
FFormats:=TFormatList.Create; создание есть только для поля. Но свойство имеет тот же тип, что и поле TFormatList. Для свойства нет необходимости в .Create?property) по своей сути это не данные, то есть не поле, хотя обычно инкапсулирует какое-то приватное поле (private field). Свойство объекта, это... просто свойство объекта, его реализация на плечах программиста. Он может просто отзеркалить его на какое-то внутреннее поле. Может сделать доступ к полю через методы Get... и Set... Свойство вообще может не ссылаться ни на какое поле с данными, а быть полностью вычисляемым с помощью указанных выше методов. Свойства служат для изоляции внутренностей объекта от внешней средыСП
Ш