|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
14.08.2019, 11:04 | #1 |
Пользователь
Регистрация: 14.08.2019
Сообщений: 18
|
Вызвать указанную в параметре функцию
Нужно из некоторой процедуры вызвать другую, заранее неизвестную процедуру (или одну из известных). Типа:
Код:
Если невозможно, то подскажите, как это вообще можно сделать. Но без перебора, типа: Код:
С уважением, Николай. Последний раз редактировалось NNK_RTR; 14.08.2019 в 11:06. Причина: Ошибка форматирования |
14.08.2019, 12:13 | #2 |
Старожил
Регистрация: 12.11.2010
Сообщений: 8,568
|
Как сделать без перебора, как вы хотите, я вряд ли скажу. Но, если вам отсутствие перебора не принципиально, то...
param2 можно сделать тоже целым числом. В функции first делаете такой перебор, как вы написали. Далее, делайте вот что. Ниже пишите только заголовки (сигнатуры) необходимых процедур (two, three, four...ten). После них через точку с запятой пишите слово forward. То есть, у вас получится что-то вроде Код:
А реализацию функций надо будет написать после десятой процедуры. Если честно, я сам никогда не так подпрограммы (не приходилось), но делается это как-то так с большой долей точности. |
14.08.2019, 12:39 | #3 |
Пользователь
Регистрация: 14.08.2019
Сообщений: 18
|
Спасибо ОГРОМНОЕ!
Процедуры (функции) two, three, four...ten будут находиться в другом модуле (или, даже, в разных модулях) (в них же и описаны). Поэтому директива (или спецификатор?) forward тут неуместен (может и ошибаюсь). Дело в том, что процедура First содержит довольно большой цикл (перебор файлов каталогов с заходом в под-каталоги). В этом цикле и должна вызываться нужная процедура. Не хотелось бы использовать операторы выбора в цикле. И так, сам перебор и обработка файлов занимает много времени. Все равно ОГРОМНОЕ спасибо за ответ. С уважением, Николай. |
14.08.2019, 12:54 | #4 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Например так для не объектных процедур:
Код:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
14.08.2019, 13:01 | #5 |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,528
|
процедурный тип.
Код:
Код:
Код:
программа — запись алгоритма на языке понятном транслятору
|
14.08.2019, 17:24 | #6 |
Пользователь
Регистрация: 14.08.2019
Сообщений: 18
|
Вопрос в принципе снят.
Буду пытаться внедрить ответ в жизнь, вернее в код Спасибо ОГРОМНОЕ (раз обещал) |
15.08.2019, 02:44 | #7 |
ПШП
Участник клуба
Регистрация: 15.07.2013
Сообщений: 1,894
|
|
15.08.2019, 10:31 | #8 |
Пользователь
Регистрация: 14.08.2019
Сообщений: 18
|
Даже не знаю...
Попробую озвучить общую задачу, а Вы подскажите, правильно ли я Вас понял. Лет 10 назад я решил разобраться с фото, которые до безобразия вольготно расплодились на моем компьютере. Я решил все фото собрать в одну папку и упорядочить их по дате съемки. Посмотрев результат я заметил, что некоторые фото сняты явно летом имеют дату съемки указывающие на зиму (январь...), да и год съемки, судя по возрасту внуков тоже не сходится. Изменить дату съемки одного фото легко, но их множество. Тогда я написал несколько программ, которые последовательно справляются с пакетным изменением даты съемки. (одна программа собирает все фото в одну папку, другая - сортирует по типу камеры...). программы практически не имели интерфейса, необходимые данные я вставлял непосредственно в код, но со своей задачей справились и я успокоился. По мере старения (сейчас 68 лет) я заметил, что мозги явно усыхают. Чтобы замедлить усыхание я занялся русификацией программ. Наибольшим своим достижением я считаю перевод IDA. (если кому интересно, то мои переводы можно посмотреть здесь). С этой же целью я решил собрать разные программы в одну с общим интерфейсом. Такова предыстория и такова общая задача. Вы это имели ввиду? Что-то надо конкретизировать? |
15.08.2019, 18:55 | #9 |
Старожил
Регистрация: 04.02.2011
Сообщений: 4,619
|
|
15.08.2019, 19:42 | #10 |
Пользователь
Регистрация: 14.08.2019
Сообщений: 18
|
Посмотрел Ваши личные данные (почему-то они профилем называются).
Судя по отклику и улыбающемуся смайлику (а может ехидно улыбающемуся), с мозгами у Вас проблем нет. Здоровья Вам. С уважением, Николай. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вызвать функцию(с++) | Sterben | Помощь студентам | 13 | 29.09.2015 09:01 |
написать программу массивы (C++) - Написать функцию выводящую на экран указанную часть таблицы умножения | Саша1990 | Помощь студентам | 1 | 02.02.2015 08:01 |
Как вызвать функцию.. | Аделинкка | Общие вопросы Delphi | 10 | 21.12.2012 10:47 |
Як вызвать функцию из dll в C# ? | Dr.Pauliss | Помощь студентам | 5 | 26.09.2011 12:42 |
Как вызвать функцию? | blackstersl | Общие вопросы Delphi | 10 | 07.06.2009 19:22 |