Вызов процедуры, имя которой содержится в переменной I
Как я могу вызвать процедуру, чье имя хранится в таблице, списке, и т.п.? Другими словами, я хочу сохранить имя процедуры в переменной и для ее вызова обращаться к значению этой переменной. Какие предложения?
procedure RegisterProc(procName : String; proc : MyProc); begin
ProcDict.AddObject(procName, TObject(@proc));end;
procedure ExecuteProc(procName : String; arg : String); var
index : Integer;begin
index := ProcDict.IndexOf(ProcName); if index >= 0 then MyProc(ProcDict.objects[index])(arg);// Можно вставить обработку исключительной ситуации - сообщение об ошибке end;