|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
17.05.2024, 23:37 | #1 |
Форумчанин
Регистрация: 10.02.2021
Сообщений: 662
|
Корректна ли функция?
Код:
Для этого сделал функцию, которая сначала проверяет наличие панели вообще, а потом уже ее видимость. Корректен ли код? Могут ли быть "подводные камни"? Самостоятельные тесты проблем не обнаружили |
18.05.2024, 01:59 | #2 |
ПШП
Участник клуба
Регистрация: 15.07.2013
Сообщений: 1,897
|
|
18.05.2024, 10:21 | #3 |
Высокая репутация
СуперМодератор
Регистрация: 27.07.2008
Сообщений: 15,674
|
Panel1 не обязана быть nil, что не гарантирует наличие самого объекта.
E-Mail: arigato.freelance@gmail.com
|
18.05.2024, 11:21 | #4 |
Форумчанин
Регистрация: 10.02.2021
Сообщений: 662
|
Как тогда лучше сделать? Так лучше?
Код:
|
18.05.2024, 11:58 | #5 |
Форумчанин
Регистрация: 10.02.2021
Сообщений: 662
|
|
18.05.2024, 12:03 | #6 |
Просветитель
Участник клуба
Регистрация: 26.12.2012
Сообщений: 1,844
|
Корректен. Подводный камень:
На практике решается размещением переменных в теле класса, вызовом FreeAndNil для их очистки, а также использованием соответствующих контейнеров (TObjectList вместо массива, например), если нужно. |
18.05.2024, 12:15 | #7 |
Форумчанин
Регистрация: 10.02.2021
Сообщений: 662
|
Если я в программе эту панель не удаляю, а только создаю - то могут быть случае отличающиеся от nil ?
Просто панель не создаётся сразу, чтобы не перегружать загрузку программы. Но при первом обращении к этому разделу программы, панель создаётся и больше не удаляется. Отсюда вопрос: могут ли в таком случае возникнуть проблемы с тем что значение <>nil а панели нет? |
18.05.2024, 13:47 | #8 | ||
Просветитель
Участник клуба
Регистрация: 26.12.2012
Сообщений: 1,844
|
Цитата:
Цитата:
В нормальной программе создаваться автоматически должна только главная форма, а всякие вспомогательные, типа диалогов, — по мере надобности. Если нет каких-то других соображений, конечно. Они есть? |
||
18.05.2024, 17:46 | #9 | |
Высокая репутация
СуперМодератор
Регистрация: 27.07.2008
Сообщений: 15,674
|
Цитата:
Код:
E-Mail: arigato.freelance@gmail.com
|
|
19.05.2024, 05:55 | #10 | ||
Просветитель
Участник клуба
Регистрация: 26.12.2012
Сообщений: 1,844
|
Цитата:
Цитата:
|
||
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Корректна ли замена BitMap | Kronos913 | Общие вопросы Delphi | 3 | 12.03.2024 07:03 |
Напишите функцию calculateArea. -Если функция принимает одно число "a" - она возвращает площадь квадрата (a*a). -Если функция принимает два числа "a, b" - она возвращает площадь пр | Skeydzh | Фриланс | 4 | 04.07.2017 22:42 |
Функция | ICMP | Microsoft Office Excel | 7 | 05.01.2014 02:11 |
Функция pow | |Dima| | Общие вопросы C/C++ | 16 | 19.07.2011 13:07 |
одна функция потока, а другая функция - член класса запускающего этот поток | Дмитрий_Ч | Общие вопросы C/C++ | 2 | 27.09.2007 08:50 |