递归Fortran子程序和接口

递归Fortran子程序和接口,fortran,fortran95,Fortran,Fortran95,我需要为递归Fortran95(及以上)子例程定义接口吗?在库中,如果将子例程导出给用户,是否会产生影响 RECURSIVE不是一个需要显式接口的属性,因为它不影响过程的调用方式。有关显式接口的更多信息,请参阅我不久前在主题上写的一篇文章:递归不是需要显式接口的属性,因为它不影响过程的调用方式。有关显式接口的更多信息,请参阅我不久前写的一篇文章:您所说的“定义接口”是什么意思。你的意思是,“当引用这样一个过程时,必须有一个显式的接口吗?”?是的,这就是我的意思。你应该总是提供一个显式的接口(最好

我需要为递归Fortran95(及以上)子例程定义接口吗?在库中,如果将子例程导出给用户,是否会产生影响

RECURSIVE不是一个需要显式接口的属性,因为它不影响过程的调用方式。有关显式接口的更多信息,请参阅我不久前在主题上写的一篇文章:

递归不是需要显式接口的属性,因为它不影响过程的调用方式。有关显式接口的更多信息,请参阅我不久前写的一篇文章:

您所说的“定义接口”是什么意思。你的意思是,“当引用这样一个过程时,必须有一个显式的接口吗?”?是的,这就是我的意思。你应该总是提供一个显式的接口(最好使用一个模块,而不是一个接口块!),这样用户就不必自己做,但是IIRC在这里并不是绝对必要的。我已经复制了在中引用时需要显式接口的东西。如您所见,
recursive
不存在。但提供一个界面仍然是个好主意。谢谢francescalus,这正是我们所需要的。你所说的“定义一个界面”是什么意思。你的意思是,“当引用这样一个过程时,必须有一个显式的接口吗?”?是的,这就是我的意思。你应该总是提供一个显式的接口(最好使用一个模块,而不是一个接口块!),这样用户就不必自己做,但是IIRC在这里并不是绝对必要的。我已经复制了在中引用时需要显式接口的东西。如您所见,
recursive
不存在。但还是提供一个好主意。谢谢弗朗西斯卡勒斯,这正是我们所需要的。