Mas*_*ler 15 delphi compiler-construction directive hints
在Delphi中,您可以使用编译器指令禁用特定警告,例如
{$WARN USE_BEFORE_DEF OFF}
Run Code Online (Sandbox Code Playgroud)
但是当我尝试用特定的提示做到这一点时,编译器表示它不知道{$ HINT}是什么,而我的undercore_style_name是从帮助文件中获取的.有没有办法做到这一点?
Lar*_*ens 31
没有具体提示,但您可以全部禁用它们.
{$HINTS OFF}
procedure MyProc;
var
i : integer;
begin
DoSomething;
end;
{$HINTS ON}
Run Code Online (Sandbox Code Playgroud)
一点偏离主题:您应该注意编译器的提示和警告.它们不仅仅是为了好玩.编译器只是说"程序可能会以不同的方式工作,因为您的源代码不准确".
要发挥它真的安全,人们想做这样的事情:
function TopazGetText(const _s: string): string;
begin
{$IFOPT <something>+}
{$DEFINE HINTS_WERE_ON}
{$HINTS OFF}
{$ELSE}
{$UNDEF HINTS_WERE_ON}
{$ENDIF}
Result := dzDGetText(_s, TOPAZ_TRANSLATION_DOMAIN);
{$IFDEF HINTS_WERE_ON}
{$HINTS ON}
{$ENDIF}
end;
Run Code Online (Sandbox Code Playgroud)
不幸的是,似乎没有用于检查提示是否关闭的编译器指令,因此您无法执行此操作.(H +不是用于提示,而是用于长串).此外,HINTS OFF/ON在功能/程序中不起作用.
因此,您最终无条件地为整个功能打开和关闭提示:
{$HINTS OFF}
function TopazGetText(const _s: string): string;
begin
Result := dzDGetText(_s, TOPAZ_TRANSLATION_DOMAIN);
end;
{$HINTS ON}
Run Code Online (Sandbox Code Playgroud)
(编译器曾经告诉我,它无法内联dzDGetText,这是我在这种情况下并不关心的事情,我不想看到提示,因为这会阻止我(和我的同事)关心重要的提示.)
| 归档时间: |
|
| 查看次数: |
5767 次 |
| 最近记录: |