|
50 / 35 / 21
Регистрация: 17.09.2014
Сообщений: 1,615
|
||||||||||||||||
Объявление функций и процедур. Как правильно объявлять?13.11.2017, 23:38. Показов 12169. Ответов 12
Метки нет (Все метки)
Как правильно объявлять?
Вот например я создаю свою функцию(я не знаю чем отличается functions от procedure, кроме того, что в процедуре не нужно ничего возвращать):
Нужно ли совать её в private? Просто не очень удобно листать то вверх, то вниз, и лучше было бы, чтобы функция была ниже события нажатия кнопки.
0
|
||||||||||||||||
| 13.11.2017, 23:38 | |
|
Ответы с готовыми решениями:
12
Объявление функций - в каком месте кода объявлять собственные функции Как правильно объявлять массивы Как правильно объявлять ArrayList? |
|
пофигист широкого профиля
4770 / 3206 / 862
Регистрация: 15.07.2013
Сообщений: 18,613
|
||
| 14.11.2017, 01:54 | ||
Сообщение было отмечено артист как решение
РешениеP.S. А по поводу всего остального в энный раз настоятельно советую купить/украсть учебник по Дельфи/Паскалю. Ибо у вас во втором варианте кода ошибка вовсе не из-за того что и где описано. Давно пора научиться различать методы класса и регулярные процедуры.
1
|
||
|
|
|
| 14.11.2017, 05:44 | |
Сообщение было отмечено артист как решение
Решение
методы объекта имеют доступ ко всем полям объекта "напрямик"
просто процедуры и функции обращаются к ним через сам объект чаще всего, если уж вы пишете в делфи, где все построено на ООП, нужно создавать методы форм, а не простые процедуры тогда принципиально все равно, где ее объявить, ведь главное объявление будет в объявлении самого класса формы
1
|
|
|
Фриланс Pascal/Delphi etc
67 / 73 / 16
Регистрация: 25.11.2016
Сообщений: 263
|
||||||
| 14.11.2017, 06:38 | ||||||
Сообщение было отмечено артист как решение
Решение
Так будет работать:
1
|
||||||
|
50 / 35 / 21
Регистрация: 17.09.2014
Сообщений: 1,615
|
||
| 14.11.2017, 07:24 [ТС] | ||
|
Я гуглил, и видимо просто не заметил, что имя класса должно быть перед функцией. -------------------------------------------------------------------------------------------------------- А можно без формы описать эти функции, чтобы вызывать их как есть, а не через класс?
0
|
||
|
Модератор
|
||
| 14.11.2017, 08:41 | ||
|
1
|
||
|
Фриланс Pascal/Delphi etc
67 / 73 / 16
Регистрация: 25.11.2016
Сообщений: 263
|
||||||
| 14.11.2017, 13:50 | ||||||
|
Конечно можно, главное чтобы эти функции были объявлены до их использования.
1
|
||||||
|
Житель Земли
|
||
| 14.11.2017, 21:25 | ||
|
и почитайте учебник, ибо
Добавлено через 1 минуту это называется "предварительное объявление". когда ты описываешь методы в классе, это тоже самое предварительное объявление
1
|
||
|
50 / 35 / 21
Регистрация: 17.09.2014
Сообщений: 1,615
|
|
| 14.11.2017, 21:26 [ТС] | |
|
DenNik, Вот про это я и спрашивал, спасибо. ))
А на счёт литературы, как я могу найти то, что не знаю как называется? (про предварительное). Перед тем как создать эту тему, я гуглил - "делфи объявление функций". И везде было одно и тоже, суйте пишут в классы.
0
|
|
|
Житель Земли
|
||
| 14.11.2017, 22:04 | ||
|
сужу по собственному опыту Добавлено через 13 минут артист, живейший пример. я в соседней теме задал вопрос о директивах компилятора, а через некоторое время вспомнил, что когда-то сталкивался с понятием "условная компиляция". опираясь на это, я без труда нашел ответ на свой вопрос )
1
|
||
| 15.11.2017, 00:37 | |
|
0
|
|
|
Фриланс Pascal/Delphi etc
67 / 73 / 16
Регистрация: 25.11.2016
Сообщений: 263
|
||||||
| 15.11.2017, 16:28 | ||||||
|
артист
Можно ещё использовать предварительное описание функции через директиву forward:
1
|
||||||
| 15.11.2017, 16:28 | |
|
Помогаю со студенческими работами здесь
13
Как правильно объявлять переменные?
Как правильно объявлять struct переменную? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут
Суть:
- Группа наркоманов из 10 человек.
- Только один инфицирован ВИЧ.
- Колются одной иглой.
- Колются раз в день.
- Колются последовательно через. . .
|
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
|
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|