Pascal $apptype是最佳实践注释吗?

Pascal $apptype是最佳实践注释吗?,pascal,freepascal,Pascal,Freepascal,我刚开始使用FPC来练习更多关于Pascal的知识,但现在对于Linux,在“程序”声明之后,我开始看到很多这样的评论: {$apptype console} 但这是一个最佳实践注释还是一种声明类型?{$…}不仅仅是注释,而是编译器指令 这是一份清单 具体来说,{$apptype console}告诉编译器制作一个控制台而不是gui应用程序。是的,但与Delphi相反,FPC控制台是默认的。Delphi具有GUI默认值(*) 由于Delphi和FPC之间的默认值不同,如果代码有可能必须在Del

我刚开始使用FPC来练习更多关于Pascal的知识,但现在对于Linux,在“程序”声明之后,我开始看到很多这样的评论:

{$apptype console}

但这是一个最佳实践注释还是一种声明类型?

{$…}
不仅仅是注释,而是编译器指令

这是一份清单


具体来说,
{$apptype console}
告诉编译器制作一个控制台而不是gui应用程序。

是的,但与Delphi相反,FPC控制台是默认的。Delphi具有GUI默认值(*)

由于Delphi和FPC之间的默认值不同,如果代码有可能必须在Delphi下运行,那么添加默认值是合理的做法


(*)严格来说不是,因为控制台应用程序标志也可以使用cmdline设置。但是,尽管不是100%强制要求,但在Delphi中99.9%的情况下添加它是明智的。

{$apptype console}在GUI应用程序中添加控制台也很有用。例如,对于DUnit/FPCUnit测试,如果您需要在测试运行时显示一些日志消息。