采取诸如
function c(a,b)
integer,parameter :: dp=kind(2.0e0)
real(kind=dp),intent(in) :: a,b
real(kind=dp) :: c
c=a+b
end function
有没有办法在同一个程序中调用不同种类的同一个函数?例如:
program help
integer,parameter :: sp=kind(2.0d0),dp=kind(2.0e0)
print *, c(2.0_dp,3.0_dp)
print *, c(2.0_sp,3.0_sp)
end program
我知道我可以c
使用sp
参数再次编写函数并提供一个将两者合二为一的界面,但我正在寻找一种不需要创建另一个函数的解决方案......可能只是修改现有的?