| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Для новичков > TStringlist и его Try и Finally |
| Автор: Canada 24.3.2009, 15:15 |
| Вот http://forum.vingrad.ru/topic-174701.html я почитал, но МеталФан был прав..У новичка (у меня) после прочтения - каша в голове. Я это к тому, что вот я не использовал Try и Finally, а работал с переменной типа TStringList Как с обычным мемо. И все работает! А ведь THandle, еще и .Free использует! Меня как новичка интересует такие вопросы: 1) А что будет если не использовать эти Try и Finally?Т.е. если я на 100% уверен, что ошибки в коде не будет. 2) А вот без .Free я так понимаю, эта переменная типа ТСтрингЛист так и останется в памяти? 3) А можно .Free использовать без Try и Finally? |
| Автор: MetalFan 24.3.2009, 15:37 |
на 100% ни в чем нельзя быть уверенным. если ты думаешь, что уверен на 100%, значит ты что-то еще не знаешь и не учитываешь ;) и еще бы неплохо привести куски кода, чтобы было ясно, о чем речь, без захода по ссылке. |
| Автор: vladimir74 24.3.2009, 15:40 | ||||||
ничего не будет, пока не возникнет ошибка
да, но только до тех пор пока деструктор не решит ешо уничтожить. Например при закрытии программы можно Добавлено через 56 секунд
во Добавлено через 1 минуту и 42 секунды к пункту 3 ... можно, но не нужно... ;) |
| Автор: Canada 24.3.2009, 22:09 |
| Кусок кода, это выйдет всю программу выкладывать.Т.е. я просил объяснить принцип работы, и вы это сделали на Отлично!. Дело в том, что у меня не было проблемы еще с этим. Но смысл я уже на практике понял. Спасибо вам огромное! Т.е. я ообще с TStringList раньше не работал..Спасибо! |
| Автор: CodeMonkey 25.3.2009, 10:04 |
| TStringList тут как-бы вообще ни при чём. Это общие принципы/правила. |
| Автор: THandle 25.3.2009, 16:45 | ||||
Попробуй два кода(самый примитив, что пришло в голову сейчас...) вне среды(не в Delphi, а просто в Windows):
|
| Автор: Kbl4AH 25.3.2009, 20:57 |
| THandle, пример наглядный, попробовал... Теперь стало понятно окончательно... |
| Автор: Poseidon 26.3.2009, 13:20 |
| Есть такая коварная ошибка, которая может возникнуть где угодно и по коду и не скажешь что она именно тут может возникнуть. Завется она "Out of memory". Быть на 100% уверенным что этой ошибки не возникнет невозможно, ведь помимо твоей программы в ОС выполняется еще куча всего и знать заранее сколько кому нужно будет памяти и сколько вообще памяти на компе невозможно. |