我最近学习了Fortran程序中添加函数时的接口块。一切都工作得很好,但是现在我想在接口块中添加第二个函数。
这是我的接口块:
interface
function correctNeighLabel (A,i,j,k)
integer :: correctNeighLabel
integer, intent(in) :: i,j,k
integer,dimension(:,:,:),intent(inout) :: A
end function
function correctNeighArray (B,d,e,f)
character :: correctNeighArray
integer, intent(in) :: d,e,f
character, dimension(:,:,:),intent(inout) :: B
end function
end interface
对我来说,这可能不是最佳的选项。
我尝试过使用子程序,但我不太确定它是否是正确的解决方案。我的需求比较简单,并且需要将参数传递给子程序,但我看到的所有子程序都很复杂(即功能过于复杂),而且都不接受参数。它们的行为就好像在不传递变量的情况下操作变量。
我没有认真研究过模块,但从我所见,它并不是正确的使用方式。
应该在什么情况下使用哪种方法,该如何最好地实现?