【问题标题】:Inline keyword gfortran内联关键字 gfortran
【发布时间】:2011-07-20 14:16:34
【问题描述】:

是否有任何与 C“内联”关键字等效的 Fortran 关键字?

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

【问题讨论】:

    标签: fortran inline gfortran


    【解决方案1】:

    一般来说,Fortran 规范赋予编译器编写者如何实现事物的巨大空间,因此强制(甚至暗示)特定优化的语言级构造将非常不适合 Fortran。

    您在现代 Fortran 中通常做的不是指定优化,而是告诉编译器它可以用来决定要实现哪些优化。所以一个例子是标记一个无副作用的函数或子程序PURE,以便启用某些优化(实际上,这可能使内联更容易)。

    否则,正如@Vladimir F 指出的那样,您可以以这种方式使用 预先规定的编译器选项。

    类似地,CONTAINed 子程序似乎被 gfortran 更积极地内联,但这可能有帮助,也可能没有帮助。

    【讨论】:

      【解决方案2】:

      据我所知,没有源代码语句。有时您可以使用显然是内联的语句函数。否则,使用编译器命令行选项作为 gfortran 的“-finline-functions”。

      【讨论】:

        猜你喜欢
        • 2015-01-18
        • 1970-01-01
        • 2011-05-17
        • 1970-01-01
        • 1970-01-01
        • 2011-07-05
        • 1970-01-01
        • 2018-03-04
        • 1970-01-01
        相关资源
        最近更新 更多