CVF6.6中实现函数指针功能
MODULE gvaIMPLICIT NONE
INTERFACE
REAL*8 FUNCTION fun(x)
REAL*8,INTENT(IN) :: x
END FUNCTION fun
REAL*8 FUNCTION ftan(x)
REAL*8,INTENT(IN) :: x
END FUNCTION ftan
REAL*8 FUNCTION poly(x)
REAL*8,INTENT(IN) :: x
END FUNCTION poly
END INTERFACE
PROCEDURE(fun),POINTER :: f
END MODULE gva
READ(5,*)k
IF(k == 0) THEN
f => ftan
ELSE IF(k==1 ) THEN
f => poly
ELSE
END IF
f为函数指针(或者函数变量)
根据输入k,对f进行赋值。此功能在gfortran中可以使用,interface为新的特性,
在CVF6.6中不支持,在CVF6.6中如何实现以上功能?
这问题就好像问:“怎么在诺基亚1100手机上安装微信”一样。
没法实现,放弃这种老版本编译器,让它入土为安吧。
https://gss1.bdstatic.com/9vo3dSag_xI4khGkpoWK1HF6hhy/baike/w%3D268%3Bg%3D0/sign=480c43c1692762d0803ea3b998d76fc7/a71ea8d3fd1f413476eaf99c2f1f95cad0c85e77.jpg
fcode 发表于 2017-10-27 13:07
这问题就好像问:“怎么在诺基亚110手机上安装微信”一样。
没法实现,放弃这种老版本编译器,让它入土为 ...
比喻通俗易懂,谢谢!:-handshake
页:
[1]