跳到主要内容

Fortran 类型绑定过程

类似 Python 中的 instance.method()==method(instance)。例如

type point
real :: x
real :: y
contains
procedure, pass :: add
end type

这个过程的引用可以写作 p%add,另外 pass 表明调用的变量会被当成第一个参数传递。此时需要在同一模块中定义语句:

contains
function add(p1, p2)
type(point) :: add
class(point) :: p1, p2
...
end function add
end module xx