![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Trust no one.
Старожил
Регистрация: 07.04.2009
Сообщений: 6,526
|
![]() Код:
BlockRead(F, I, SizeOF(I)); Case I of 0 : Begin BlockRead(F, J, SizeOf(Integer)); AddBlue(T, J); End; 1 : ... И что, так для каждой процедуры? Так дело не пойдет. Какие имеются мысли: [*] Намутить массив указателей. Нацелить их на процедуры. Намутить массив количества параметров для соответствующих процедур. А как вызывать - ХЗ. [*] Намутить каждой функции лишние параметры, чтобы у каждой было одинаковое количество. Все их обзывать не по именам, а запхнуть в массив. Тогда возникают трудности, если я хочу какую-то отдельную функу вызвать не из файла, а рантайм. Так по имени видно, а индекс мало расскажет. В общем слушаю мысли, даже самые кровожадные.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ |
![]() |
![]() |
![]() |
#2 | ||
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]() Цитата:
![]() (нужен асм тогда) Цитата:
но проверку за выход массива не забудь на всяк. это проще ибо можно без асма тогда. PS:я сейчас интерпритатор пишу но у меня принцип совсем иной. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
||
![]() |
![]() |
![]() |
#3 | |
Trust no one.
Старожил
Регистрация: 07.04.2009
Сообщений: 6,526
|
![]() Цитата:
P.S. А нет функи, чтобы узнать количество или общий размер параметров целевой функи?
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ |
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
массив функций
Код:
естественно заполнить его не забудь ![]() Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#5 |
Trust no one.
Старожил
Регистрация: 07.04.2009
Сообщений: 6,526
|
![]()
А як его заполнить? так:?
Код:
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ |
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 01.06.2010
Сообщений: 23
|
![]()
FuncAr[0] := AddBlue; так
|
![]() |
![]() |
![]() |
#7 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
просто FuncAr[0] := AddBlue;
достаточно ![]() Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. Последний раз редактировалось Пепел Феникса; 14.07.2010 в 18:16. |
![]() |
![]() |
![]() |
#8 |
Участник клуба
Регистрация: 12.10.2007
Сообщений: 1,204
|
![]()
Если сделать процедуры методами класса, то можно вызывать их просто по имени. По моему небольшая плата за универсальность. При добавлении методов к классу не придется заботиться о привязке имени к адресу и о количестве параметров.
Код:
|
![]() |
![]() |
![]() |
#9 |
Trust no one.
Старожил
Регистрация: 07.04.2009
Сообщений: 6,526
|
![]()
Дело в том, что модуль Classes не подключен - дюже много весит. Попробую сотворить колдовство из #4 и #7
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ |
![]() |
![]() |
![]() |
#10 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
alexBlack, а вот мне это пригодится, ибо у меня строгий ООП.
надо мне Variant изучить, похоже очень полезен мне будет) Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. Последний раз редактировалось Пепел Феникса; 14.07.2010 в 20:47. |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Динамический массив процедур | ZaRDaK | Общие вопросы Delphi | 14 | 11.07.2010 15:47 |
Массив процедур - как? | boris-blade | Microsoft Office Word | 1 | 21.02.2010 23:13 |
Как решать японские кроссворды или судоку? Может у кого-нибудь есть идеи? | TwiX | Свободное общение | 2 | 16.08.2009 07:56 |
Массив процедур | garik | Общие вопросы Delphi | 0 | 18.03.2009 21:08 |
Компонент получше чем TMediaPlayer | Viteef | Компоненты Delphi | 7 | 12.05.2007 22:14 |