如何在 Delphi 中将过程标记为已弃用或过时?

Mar*_*uis 4 delphi procedure deprecated obsolete delphi-12-athens

在某些编程语言中,可以将函数标记为已弃用或已过时,然后不能使用或应谨慎使用。有时它甚至会在某处产生警告消息。

Delphi 编程语言中是否可以将过程标记为已弃用?如果可能的话,它是如何运作的?

Rem*_*eau 10

Delphi 有一个deprecated 提示指令 1

提示指令

“提示”指令platformdeprecated、 和library可以附加到任何声明中。这些指令将在编译时产生警告。提示指令可应用于类型声明、变量声明、类、接口和结构声明、类或记录内的字段声明、过程、函数和方法声明以及单元声明。

...

... 用于platform标记特定于特定操作环境(例如 Windows)的项目,deprecated指示某个项目已过时或仅出于向后兼容性而受支持,并library标记对特定库或组件框架的依赖关系。

...

例如:

procedure SomeOldRoutine; deprecated 'This is old use SomeNewRoutine instead';
Run Code Online (Sandbox Code Playgroud)

1:请注意,Delphi 的文档没有描述在 上包含用户定义的警告消息的功能deprecated,但实际上自 Delphi 2009 以来就支持它(deprecated本身是在 Delphi 6 中引入的)。