当我们从具有通过程指针,是在每种情况下复制的实际过程(子程序/功能)中的数据类型(类)创建多个实例?或者只是复制指针?程序拷贝
例如,考虑下面的代码可以编译和运行正常。
module mod2 implicit none private type class_type integer :: a, b, c contains procedure :: add => add_it end type class_type public :: class_type contains subroutine add_it(this) implicit none class(class_type), intent(inout) :: this this%c = this%a + this%b end subroutine add_it end module mod2 program tester use mod2 implicit none type(class_type), dimension(10) :: objs objs(:) = class_type(1, 2, 0) end program tester
是子程序add_it
在每个从数据类型class_type
创建的10个对象的复制?或者子程序add_it
的指令集存储在某处并指向它,即"procedure :: add => add_it"
复制到每个对象中?