模块 use 语句中的 Fortran 内部关键字
Fortran intrinsic keyword in module use statement
在模块的 use
语句中添加 intrinsic
关键字是什么意思,如下例所示?
use, intrinsic :: iso_c_binding
(来自
7.1 Overview of Fortran interface, FFTW 3.3.6-pl1)
它是否指定应该使用编译器提供的同名模块,即使用户编写了另一个同名模块?
使用 use, intrinsic :: ...
确实选择了内部模块。
这个问题可能有点微妙,值得一提。关于"a module of that name provided with the compiler should be used",这个"should"不是偏好,而是强烈的要求。也就是说,如果没有这样的内部模块,那么编译就不会成功。这不应该是 iso_c_binding
的问题,但编译器通常会提供他们自己的非标准内部模块。
没办法说"use the intrinsic module if it's available, but the user-provided one if not"。
在模块的 use
语句中添加 intrinsic
关键字是什么意思,如下例所示?
use, intrinsic :: iso_c_binding
(来自 7.1 Overview of Fortran interface, FFTW 3.3.6-pl1)
它是否指定应该使用编译器提供的同名模块,即使用户编写了另一个同名模块?
使用 use, intrinsic :: ...
确实选择了内部模块。
这个问题可能有点微妙,值得一提。关于"a module of that name provided with the compiler should be used",这个"should"不是偏好,而是强烈的要求。也就是说,如果没有这样的内部模块,那么编译就不会成功。这不应该是 iso_c_binding
的问题,但编译器通常会提供他们自己的非标准内部模块。
没办法说"use the intrinsic module if it's available, but the user-provided one if not"。