我试图弄清楚以下变量定义(即子程序/功能界面)之间的区别(如果有的话)
CALL example(RealVar)
在一种情况下子例程中虚拟变量的定义是:
SUBROUTINE example(var)
REAL(wp), INTENT(<IN/OUT/INOUT>) :: var(0:n)
...
在另一个案例中:
SUBROUTINE example(var)
REAL(wp), INTENT(<IN/OUT/INOUT>), DIMENSION(0:n) :: var
...
答案 0 :(得分:2)
1)有什么区别吗?否
2)编译器会以不同方式对待它吗?几乎肯定不是
3)向后兼容性?有点但不是真的!
我个人更喜欢第二种形式,但它纯粹是风格,
伊恩