【发布时间】:2011-03-21 17:22:01
【问题描述】:
我有以下 FORTRAN 代码:
FUNCTION inverse_deterministic_cdf(dist, p) RESULT(value)
!=========== result ============
REAL(C_DOUBLE) :: value
!====== input parameters =======
TYPE(deterministic), INTENT(IN) :: dist
REAL(C_DOUBLE), INTENT(IN) :: p
!======= subroutine body =======
value = p ! This is only here to suppress unused dummy argument warning
value = dist%value
END FUNCTION inverse_deterministic_cdf
在这种情况下,inverse_deterministic_cdf 是inverse_cdf 接口的实现,这就是为什么这里有未使用的p。如您所见,我有一种方法可以抑制未使用的虚拟参数,但对我来说感觉不雅。有没有人有任何关于他们如何处理这个问题的最佳实践? (我也希望这与编译器无关。)我知道如何普遍抑制警告,但是当我有一个未使用的虚拟参数并且我没有预料到它时,我希望得到警告。 p>
编辑添加(根据要求):
inverse_cdf 接口是这样定义的:
INTERFACE inverse_cdf
MODULE PROCEDURE inverse_distribution_cdf, inverse_normal_cdf, inverse_lognormal_cdf, inverse_deterministic_cdf
END INTERFACE
【问题讨论】:
-
请告诉我们你如何定义一个 inverse_cdf 接口。