Привествую.
Вопросик.
Мне нужно передать и сохранить именованый массивчик ссылок на методы (т.е. массив пар "Имя=ссылка на метод") - как в TStrings только хранить надо ссылки на методы. Методы одного типа в массиве (даже не представляю как можно замутить еще и разного типа
)
Я уже разобрался как сохранить один (не именованый само собой...) метод...
Мдя.... Объясню на примере...
Счас вот что есть
type
// Объявим прототип метода
TSomeMethod = function (Key: integer): string;
type
// некий класс
TSomeClass = class
private
FSomeMethod: TSomeMethod;
public
constructor Create (ASomeMethod: TSomeMethod);
end;
..
constructor Create (ASomeMethod: TSomeMethod)
begin
FSomeMethod := ASomeMethod;
end;
Все ок все работает... но теперь дело усложнилось и мне нужно хранить именованый словарь методов (чтобы по заданному имени - вызвать нужный метод из массива)... В C# есть генерик Dictionary<(Of <(TKey, TValue>)>), который может хранить ссылки на делегатов.
Я пробовал через TStringList - он могет хранить TObject... но не придумал как преобразвать TSomeMethod в TObject.....
Есть ли в дельфи что-то что может помочь ?...
PS. В самом худшем случае можно хранить два массива - один string и один TSomeMethod - и синхронно работать с ними... можно но если только нету чего то удобней....