Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Синтаксис
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 12.05.2008, 02:58
Mouser Mouser вне форума
Прохожий
 
Регистрация: 12.05.2008
Сообщения: 2
Репутация: 10
Вопрос Динамическое изменение функции

Во время выполнения программы есть необходимость изменить саму функцию, т.е. практически переписать блок
function fun:type
begin
...
end;
Использование параметров не подходит.
Опишу точнее: есть несколько функций, считающих сложные математические функции. При выполнении программы меняются сами виды мат. функций и их параметры (вводятся почти вручную).
1.Есть ли возможность это реализовать относительно стандартными средствами Delphi?
2.Возможно ли функции с параметрами собрать красиво в массив? А то имеется очень перспективное место для их использования.
Ответить с цитированием
  #2  
Старый 12.05.2008, 13:12
voron_paa voron_paa вне форума
Прохожий
 
Регистрация: 26.01.2008
Сообщения: 49
Репутация: 10
По умолчанию Дети учите ООП!!!

тебе нужно описать типы
ну если я тебя правильно понял...
то потом можно подгружать функции из dll или других
прог т.е. ложить в переменную ложить адрес на функцию...

Код:
type 
  .....  
  TMathFunc = function ([<массив параметров>]):type of object;
  ....

далее описываешь класс с векторным свойством
просто такого гемора как с массивами у тя не будет...
все уже готово в классе TList ... хвала прогерамм Borland!!!!
Код:
  
   TListFunc = class(TList)
       
   protected
     procedure NewElem(index : integer; value : TMathFunc);
     function returnelem(index : integer):TMathFunc; 
   public
     property Items[index : integer]: TMathFunc read NewElem write NewElem; default;

дальше дело техники...
обращаешься к свойству ... можно по значению свойства... без разницы...
а функции грузишь простым присваиванием... и всё...
Ответить с цитированием
  #3  
Старый 12.05.2008, 19:11
Mouser Mouser вне форума
Прохожий
 
Регистрация: 12.05.2008
Сообщения: 2
Репутация: 10
По умолчанию

Благодарю!
Вариант подходит, буду реализовывать. Даже не вспомнил о TList - cработал стереотип, что TList только для компонентов, начал бороться с ним...
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 20:13.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter