TStrings * ts = new TStringList
...
ts->Free();// какой из этих вариантов
delete ts;// коректный
Free или delete
Вопрос на засыпку:
что лучше использовать в билдере при удалении объекта
метод Free(), или delete
Код:
Заранее спасибо
Оба варианта корректны. Просто Free - отголосок VCLа, написанного, как известно, на Пасквиле. С++ в Билдере "более объектно-ориентированный", что ли, чем ObjectPascal. В Билдере юзается delete как стандартный оператор удаления экземпляра из памяти, который вызывает деструктор класса. В Пасе то же самое лежит на плечах Free. Поэтому особой разницы между этими двумя вариантами нет. Лично я везде пишу delete, ибо это больше в духе Це :)
Цитата:
Originally posted by waterman
Оба варианта корректны. Просто Free - отголосок VCLа, написанного, как известно, на Пасквиле. С++ в Билдере "более объектно-ориентированный", что ли, чем ObjectPascal. В Билдере юзается delete как стандартный оператор удаления экземпляра из памяти, который вызывает деструктор класса. В Пасе то же самое лежит на плечах Free. Поэтому особой разницы между этими двумя вариантами нет. Лично я везде пишу delete, ибо это больше в духе Це :)
Оба варианта корректны. Просто Free - отголосок VCLа, написанного, как известно, на Пасквиле. С++ в Билдере "более объектно-ориентированный", что ли, чем ObjectPascal. В Билдере юзается delete как стандартный оператор удаления экземпляра из памяти, который вызывает деструктор класса. В Пасе то же самое лежит на плечах Free. Поэтому особой разницы между этими двумя вариантами нет. Лично я везде пишу delete, ибо это больше в духе Це :)
Большущее спасибо