|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
22.09.2011, 09:58 | #1 |
Форумчанин
Регистрация: 26.07.2009
Сообщений: 489
|
Область видимости
Здравствуйте. Когда пишу подпрограммы, то возникает небольшие неудобства, связаны они с тем, что если я использую оператор with в подпрограмме и есть поле, имя которого совпадает с формальным параметром подпрограммы, то как мне обратиться к параметру. Конечно, можно использывать другое имя параметра, но я придерживаюсь одних и тех же понятных имен.
Если в глубине души вы программист, то, следуя своим наклонностям, вы захотите написать кусок кода.
|
22.09.2011, 10:02 | #2 |
Форумчанин
Регистрация: 29.06.2008
Сообщений: 603
|
отказаться от with?
|
22.09.2011, 10:03 | #3 |
Форумчанин
Регистрация: 26.07.2009
Сообщений: 489
|
Можно отказаться от with, можно поменять имя параметра или поля. Но это не выход. Может есть др. способы?
Если в глубине души вы программист, то, следуя своим наклонностям, вы захотите написать кусок кода.
|
22.09.2011, 10:12 | #4 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
Приведите пример...
Код:
|
22.09.2011, 10:16 | #5 |
Форумчанин
Регистрация: 26.07.2009
Сообщений: 489
|
Код:
Если в глубине души вы программист, то, следуя своим наклонностям, вы захотите написать кусок кода.
|
22.09.2011, 10:39 | #6 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
В пределах предложения With, Delphi пробует решить неполные ссылки, смотря сначала на адресат стоящий после With. Остается только поменять имя параметра или поля - других решений нет
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
22.09.2011, 11:04 | #7 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
а по моему, абсолютно логично, если имя параметра будет ОТЛИЧАТЬСЯ от имён полей..
например, так: Цитата:
А на понятность ("я придерживаюсь одних и тех же понятных имен. ") это повлияет только в лучшую сторону! |
|
23.09.2011, 14:49 | #8 | |
Старожил
Регистрация: 13.08.2009
Сообщений: 2,581
|
Замечу, что параметры обычно называют через "A": AValue.
Ещё замечу, что with - далеко не самый удачный оператор в Pascal. Вместо with лучше использовать локальную переменную. Но вот это: Цитата:
Вероятно, наиболее правильное решение - запись с методами (где вся работа с полями выполнятся самой записью). Если же это невозможно (старая Delphi), то стоит рассмотреть вариант использования полноценного класса.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
|
|
23.09.2011, 15:39 | #9 |
фонатик DELPHI
Форумчанин
Регистрация: 14.01.2008
Сообщений: 714
|
Как вариант:
Код:
Я использую именно такой способ, например при хранении таких полей как FileName Handle и.т.п
95% сбоев и ошибок приложений, находится в полу метрах от монитора
|
23.09.2011, 22:39 | #10 | ||||
Форумчанин
Регистрация: 26.07.2009
Сообщений: 489
|
Цитата:
Цитата:
Цитата:
Цитата:
Если в глубине души вы программист, то, следуя своим наклонностям, вы захотите написать кусок кода.
|
||||
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Область видимости переменной | bondik | Общие вопросы .NET | 4 | 04.10.2010 12:18 |
область видимости классов | sashonk | JavaScript, Ajax | 1 | 15.09.2010 11:19 |
область видимости | Dimarik | Общие вопросы .NET | 5 | 21.02.2010 21:32 |
область видимости переменных. С++ | Prestigio | Помощь студентам | 10 | 07.07.2008 15:55 |
область видимости ? | artem779 | Общие вопросы Delphi | 3 | 14.09.2007 09:34 |