#杂注退出和杂注启动

来自RAD Studio
跳转到:航行,搜索

转到语用指令概述索引

语法(请参见伪grammar)

#杂注启动FUNC#杂注退出FUNC

描述

这两个杂注允许程序指定在程序启动时(在调用主函数之前)或程序退出时(在程序终止之前)应该调用的函数_退出).

指定的函数名必须是以前声明的函数,不接受参数并返回空隙; 换句话说,它应该声明为:

void myfunc(void);

然后#杂注将是:

#pragma启动myfunc

指定优先级

可选优先级参数(NN公司)应为64到255之间的整数:

  • 最高优先级为0。
  • 优先级较高的函数首先在启动时调用,最后在退出时调用。
  • 如果未指定优先级,BCC32和Clang增强型C++编译器.

警告:对于BCC32,不要使用小于64的优先级值。从0到63的优先级为RTL启动和关闭机制保留。的例外Clang增强型C++编译器如下文所述。

使用Clang增强型C++编译器构建的应用程序中的单元初始化顺序

注:单元初始化顺序应优先于#杂注启动订单,但目前尚未实现Clang增强型C++编译器.

Clang增强型C++编译器不要使用单元初始化顺序,因此在主窗体关闭之前,退出运行时没有优先级规范的例程。如果使用Clang-增强型C++编译器,则必须指定#杂注出口例行程序优先级30以确保退出例程在__ExitVCL之后运行(并与BCC32的行为匹配)。例如:

#pragma出口myfunc 30

另请参见