fortran modules的子程序名称冲突

Mah*_*yez 4 fortran

我有两个不同的模块,每个模块都有相同的子程序.主程序将根据某个条件调用其中一个.我想避免将每个子例程重命名为不同的名称.

ja7*_*a72 7

如果您有两个模块AB包含相同的方法,foo()那么首先您可以创建一个本地别名

program SOModNames
use A, fooA => foo
use B, fooB => foo
implicit none

! Variables
real X(10), Y(10)

call fooA(X,10)
call fooB(Y,10)

end program SOModNames
Run Code Online (Sandbox Code Playgroud)

例如,您无法将范围扩展到模块call A::foo(X,10).