Module name Interface Is Module Procedure::Is_Int,Is_RR,Is_Char End Interface Is Contains Integer Function Is_Int(logic,itrue,ifalse)... Real(Kind=8) Function Is_RR(logic,rtrue,rfalse)... Character(Len=64) Function Is_Char(logic,ctrue,cfalse)... End Module name ...
interface myFunction module procedure myFunction_int, myFunction_real end interface function myFunction_int(x) integer, intent(in) :: x integer :: myFunction_int ! Implementation end function myFunction_int function myFunction_real(x) real, intent(in) :: x real :: myFunction_real ! Impleme...
13contains14procedure :: display! Convenience output-method.15end type Vec3d1617! 用于运算符重载的泛型接口 18interface operator(-)19module procedure negate! 一元负号 20module procedure subtract! 二元减号 21end interface operator(-)2223contains24type(Vec3d) function negate( inVec ) 25 class(Vec3d)...
module my_module implicit noneinterfacemaxvalmodule procedure maxval_int,maxval_real endinterfacemaxvalcontainsfunctionmaxval_int(a)result(m)integer,intent(in)::a(:)integer::m m=maxval(a)endfunctionmaxval_intfunctionmaxval_real(a)result(m)real,intent(in)::a(:)real::m m=maxval(a)endfunctionmax...
INTERFACE OPERATOR(.plus.) ! .plus. = + MODULE PROCEDURE add END INTERFACE ◆超载赋值号 INTERFACE ASSIGNMENT(=) 例:编一程序把逻辑量超载赋值给整型变量。先编一个实现这一功能的子程序, !--- SUBROUTINE LOG_INT(I,L) IMPLICIT NONE LOGICAL, INTENT(IN) :: L INTEGER, INTENT(OUT):: I IF(L)...
MODULE PROCEDURE语句是单独的模块子程序的第一个语句。 语法 规则 必须将procedure_name声明为包含程序单元、祖先模块或祖先子模块中的单独模块过程。 示例 以下示例显示如何将MODULE PROCEDURE语句用作单独模块子程序的第一个语句。 MODULE m INTERFACE MODULE SUBROUTINE sub(arg) ...
module operation_i !!//operator".i."is usedforsolve the inverse MATRIX of a given MATRIX.public interfaceoperator(.i.)!!//自定义重载矩阵求逆操作符 module procedure brinv !!//实矩阵求逆 module procedure bcinv !!//复矩阵求逆endinterface ...
通过Module Procedure和Interface Operator可以将操作符进行重载,从而实现一些更加“人性化”的程序。(参考代码:"module_oper") 9.4 小结 Interface作为控制子程序间数据交换的关键,建议在所有子程序调用时都使用接口; 注意数据交换(共享)的三种方式,其中推荐使用Module而不使用Common; Module的使用能够完成数据共享,并且...
// 自定义重载矩阵求逆操作符module procedure brinv!!// 实矩阵求逆module procedure bcinv!!// 复矩阵求逆endinterfacecontains!!// 实矩阵求逆核心代码 trans from 徐士良《Fortran常用算法集》!!// 作者:zuozhihua 时间:2020/8/18 地点:江西functionbrinv(re)result(r)real*8,intent(in)::re(:,:)...
13、 namelist 14、Module 再论 15、函数 date_and_time 16、ONLY 属性 17、OVERLOAD 18、INTERFACE 的 OPERATOR 操作 19、 20、程序代码优化 21、程序代码优化处理 对于*.LIB 文件, 可以直接添加到 PROGRAM 中, 也可以放在 LIBRARY FILES 的搜索目录 下;但是对于*.MOD 就没有办法直接把它加 入 PROGRAM...