内联关键字 gfortran

8

是否有与C语言中的“inline”关键字相当的Fortran关键字?

如果存在某些特定于编译器的关键字,那么是否有适用于gfortran的关键字?

2个回答

8
一般来说,Fortran规范在实现方面给了编译器作者很大的自由度,因此强制(甚至提示)特定优化的语言级别结构非常不符合Fortran的风格。
在现代Fortran中,您通常不指定优化,而是告诉编译器可以使用哪些内容来决定要实现什么优化。例如,将无副作用的函数或子例程标记为“PURE”,以启用某些优化(实际上,这可能使内联更容易)。
否则,正如@Vladimir F所指出的那样,您可以使用编译器选项来进行预设。
类似地,似乎gfortran更积极地内联CONTAIN的子程序,但这可能有助于也可能没有帮助。

2

我不知道有任何源代码语句可以实现。有时您可以使用语句函数,这些函数显然是内联的。否则,请使用编译器命令行选项,如gfortran的“-finline-functions”。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接