我在自定义线程TMyThread
中创建请求队列,我很难定义可用于子例程的过程类型。我有表示请求,相应的记录指针,并且其在记录和使用记录指针所使用的程序类型的记录...如何定义适用于本地过程的过程类型?
type
PRequest = ^TRequest;
TResponseProc = procedure(Sender: TMyThread; Request: PRequest);
TRequest = record
Request: String;
Proc: TResponseProc;
Response: String;
end;
的问题是,当我执行的子程序命名为ResponseProc
和尝试分配ResponseProc
到TResponseProc
,它不工作,以及IDE返回该错误消息:
[DCC Error] MyProject.dpr(42): E2094 Local procedure/function 'ResponseProc' assigned to procedure variable
如何定义这个程序类型TResponse
与子程序使用它呢?
通过简单搜索'E2094',可以在XE2文档(本地安装,而不是通过docwiki)中找到答案。所以SO *不应被视为首先替代文件检查。我不低调的唯一原因是这个问题写得很好,但我正在投票结束,因为它本来不应该被问到。 – 2013-03-03 02:49:12
哦,如此有用的问题/答案不适合StackOverflow了?我在这里看到很多很好的问题,可以在文档中找到。 – 2013-03-03 02:53:24
因为你自己说这是一个写得很好的问题,所以你会投票结束为“不是真正的问题”,这也很尴尬。 – 2013-03-03 02:59:57