Форум: "Начинающим";
Текущий архив: 2008.08.10;
Скачать: [xml.tar.bz2];
ВнизПоля классов. Найти похожие ветки
← →
pathfinder © (2008-07-10 15:01) [0]Добрый день!
Подскажите пожалуйста, что происходит с полями классов при завершении приложения. Будет ли уничтожен объект SomeObject?
type
TSomeClass = class
class var
SomeObject: TSomeObject;
end;
← →
www (2008-07-10 15:03) [1]
> Будет ли уничтожен объект SomeObject?
в деструкторе пропиши
← →
pathfinder © (2008-07-10 15:04) [2]
> в деструкторе пропиши
Ну это понятно, а если не прописывать?
← →
Dennis I. Komarov © (2008-07-10 15:04) [3]> при завершении приложения. Будет ли уничтожен...
ИМХО будет.
← →
Palladin © (2008-07-10 15:05) [4]ничего не будет, комп не сгорит... просто объект останется в памяти и будет забыт до локального конца света
← →
pathfinder © (2008-07-10 15:06) [5]
> ничего не будет, комп не сгорит... просто объект останется
> в памяти и будет забыт до локального конца света
Т.е. вы точно знаете, что delphi не уничтожает статические объекты?
← →
Palladin © (2008-07-10 15:06) [6]
> pathfinder © (10.07.08 15:06) [5]
в делфи нет статических объектов
← →
Поросенок Винни-Пух © (2008-07-10 15:07) [7]Т.е. вы точно знаете, что delphi не уничтожает статические объекты?
Конечно нет. ПРосто потому что их там нет
← →
Kolan © (2008-07-10 15:08) [8]Конечно надо уничтожать вручную иначе - чистой воды утечка.
← →
Dennis I. Komarov © (2008-07-10 15:09) [9]> [8] Kolan © (10.07.08 15:08)
Даже если пипец приложению?
← →
Поросенок Винни-Пух © (2008-07-10 15:09) [10]Конечно надо уничтожать вручную иначе - чистой воды утечка.
Особенно если это просто ссылка на "компаньона".
TDataSource.Dataset
Убивая датасорс непременно надо пришить и его датасет?
← →
pathfinder © (2008-07-10 15:10) [11]Почему-то у меня поля класса ассоциировались со статическими объектами.
А в чем разница? В том, что если бы SomeObject был статическим объектом, то он и создавался бы сам?
← →
Поросенок Винни-Пух © (2008-07-10 15:11) [12]В том, что если бы SomeObject был статическим объектом, то он и создавался бы сам?
не сам а компилятором.
← →
pathfinder © (2008-07-10 15:12) [13]
> не сам а компилятором.
Ну да, это я и хотел сказать:)
← →
Palladin © (2008-07-10 15:13) [14]есть понятие агрегации
есть понятие ассоциации
в делфи они практически означают одно и тоже, за исключением одного момента: объект владелец ассоциации не имеет права контролировать ее время жизни
> В том, что если бы SomeObject был статическим объектом,
> то он и создавался бы сам?
В том что SomeObject никак не мог бы им стать, соответственно этот вопрос никакого смысла не несет
← →
pathfinder © (2008-07-10 15:15) [15]Ну что же. Всем спасибо:)
← →
DrPass © (2008-07-10 15:18) [16]
> Подскажите пожалуйста, что происходит с полями классов при
> завершении приложения. Будет ли уничтожен объект SomeObject?
>
И да, и нет. Да, потому что при завершении работы приложения вся выделенная ему память все равно освобождается, и SomeObject уйдет в небытие. Нет - в том смысле, что SomeObject не будет разрушен корректно. Т.е. не будет вызван деструктор, и если он при уничтожении должен выполнять какие-то действия, эти действия выполнены не будут
← →
DrPass © (2008-07-10 15:18) [17]
> Подскажите пожалуйста, что происходит с полями классов при
> завершении приложения. Будет ли уничтожен объект SomeObject?
>
И да, и нет. Да, потому что при завершении работы приложения вся выделенная ему память все равно освобождается, и SomeObject уйдет в небытие. Нет - в том смысле, что SomeObject не будет разрушен корректно. Т.е. не будет вызван деструктор, и если он при уничтожении должен выполнять какие-то действия, эти действия выполнены не будут
← →
tesseract © (2008-07-10 15:24) [18]
> Да, потому что при завершении работы приложения вся выделенная
> ему память все равно освобождается
Кроме глобальной, приложений лок с глоюальной не снимет - утечка будет иметь место, куча да - освободиться, но все обрывки COM и IStream остануться. Про win98 умалчиваем - даже куча останеться, где-то висеть.
← →
Dennis I. Komarov © (2008-07-10 15:53) [19]> [18] tesseract © (10.07.08 15:24)
Согласен. Уговорил :)
← →
Игорь Шевченко © (2008-07-10 16:36) [20]
> Подскажите пожалуйста, что происходит с полями классов при
> завершении приложения. Будет ли уничтожен объект SomeObject?
>
Будет обязательно.
← →
Kolan © (2008-07-10 16:45) [21]> объект владелец ассоциации не имеет права контролировать
> ее время жизни
Обоснуй. :)
← →
han_malign © (2008-07-10 16:51) [22]
> Обоснуй. :)
>> при завершении приложения
...
← →
han_malign © (2008-07-10 16:52) [23]упс, предпосылку перепутал...
← →
oxffff © (2008-07-10 17:06) [24]
>
> pathfinder © (10.07.08 15:01)
> Добрый день!
>
> Подскажите пожалуйста, что происходит с полями классов при
> завершении приложения. Будет ли уничтожен объект SomeObject?
>
А это от тебя зависит. Поскольку это не финализируемый тип.
← →
Kolan © (2008-07-10 17:11) [25]> есть понятие агрегации
> есть понятие ассоциации
>
> в делфи они практически означают одно и тоже
И кроме того, :), агрегация - это разновидность ассоциации.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.08.10;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.006 c