Подтвердить что ты не робот

Нужно ли мне освобождать эти объекты?

Я использую Delphi 1 16-bit, чтобы узнать Pascal (не смейтесь, он отлично работает, плюс я не могу позволить себе более новую версию). Я использую TList для хранения ссылок на объекты для простой адресной книги. Каждый объект добавляется к TList следующим образом:

DataList.Add(TAddrBookData.Create('Bob', '1 Mill St'));

Нужно ли мне самостоятельно создавать объекты TAddrBookData? Или они освобождаются при запуске TList.Free?

4b9b3361

Ответ 1

Вам нужно освободить их самостоятельно. Более поздние версии поставляются с TObjectList, который похож на TList, за исключением того, что он будет принимать только объекты, и у него есть возможность взять собственность и бесплатно освободить их для вас автоматически, когда список будет освобожден. Но я не считаю, что TObjectList существовал в Delphi 1, поэтому вам придется позаботиться об этом вручную.

Ответ 2

Вам также нужно будет освободить (или FreeAndNil).

Если вы хотите узнать Object Pascal (Delphi) с более новой (и свободной) IDE, попробуйте Lazarus в качестве бесплатного Turbo Delphi 2006 год был прекращен (какой плохой ход).