是否有任何与 C“内联”关键字等效的 Fortran 关键字?
如果存在一些特定于编译器的关键字,那么 gfortran 是否有任何关键字?
一般来说,Fortran 规范赋予编译器编写者如何实现事物的巨大空间,因此强制(甚至暗示)特定优化的语言级构造将非常非 Fortran-y。
您在现代 Fortran 中通常所做的不是指定优化,而是告诉编译器它可以用来决定要实现哪些优化。因此,一个示例是标记无副作用的函数或子程序PURE
,以便启用某些优化(实际上,这可能使内联更容易)。
否则,正如@Vladimir F 指出的那样,您可以以这种方式使用预先规定的编译器选项。
类似地,CONTAIN
gfortran 似乎更积极地内联了 ed 子程序,但这可能有帮助,也可能没有帮助。
我知道没有源代码语句。有时您可以使用显然是内联的语句函数。否则,使用编译器命令行选项作为 gfortran 的“-finline-functions”。