我有两个不同的模块,每个模块都有相同的子程序.主程序将根据某个条件调用其中一个.我想避免将每个子例程重命名为不同的名称.
如果您有两个模块A并B包含相同的方法,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).