Fortran良好实践:将程序接口保存在单独的文件中是否值得?

时间:2016-11-22 12:53:13

标签: fortran fortran90 fortran95

我最近检查过英特尔MKL库的样式,基本上他们使用以下方法来定义程序。

首先,他们有 mkl_name.fi 包含文件,其中包含程序的所有接口,例如

INTERFACE
subroutine xerbla(srname,info)
character*(*) srname
integer*4     info
END
END INTERFACE

,定义位于单独的文件 name.f90 中,然后将其编译为共享/静态库。

第二种方法利用模块,与前一种情况类似,只包含接口,并在单独的文件中定义过程。

问题:

  1. 对于所有接口都有单独的文件,为程序定义分配单个文件,这是一种好的做法吗? - .mod / .fi + library
  2. 我可以将所有内容放入单个模块或几个单独的模块以及过程实现吗?如果是这样,我每次运行一些测试程序时是否需要编译模块文件,或者我可以导入.mod告诉编译器在哪里找到它(.mod文件充当库)?

0 个答案:

没有答案