In Fortran 90 können wir Funktionen mit einer Schnittstelle überladen. Nach this site können wir diese Funktionen jedoch nicht mit demselben Argumentnamen definieren. Mit gfortran scheint es kein Problem zu sein, wie der folgende Code funktioniert gut genug:Überladen von Funktionen mit Fortran
interface check
module procedure check_int, check_real
end interface
contains
subroutine check_int(cur, dname, func_name, fname)
integer, allocatable, intent(in) :: cur(:)
character(*) :: dname, func_name, fname
...
end subroutine
subroutine check_real(cur, dname, func_name, fname)
real, allocatable, intent(in) :: cur(:)
character(*) :: dname, func_name, fname
...
end subroutine
So ist es schlechte Praxis, dies zu tun?
Bearbeiten: Aufruf der Funktion mit Schlüsselwörtern ändert nichts.
Ich habe es nicht so gesehen. Vielen Dank :) –