2

我有以下

 program main 

 implicit none 


 real, pointer :: x1 
 real, pointer, contiguous :: x2(:) 
 integer, pointer :: x1int 
 integer, pointer, contiguous :: x2int(:) 

 interface 
 module procedure flt_1, flt_n, int_1, int_n 
 end interface 


 contains 

 function flt_1 
 real, pointer :: flt_1 

 print*, "flt_1
 end function

 function int_1 
 real, pointer :: int_1 

 print*, "int_1"
 end function

 function flt_n 
 real, contiguous, pointer :: flt_n(:)

 print*, "flt_n
 end function

 function int_n 
 integer, contiguous, pointer :: int_n(:)

 print*, "int_n
 end function
 end program

这不起作用。编译器说无法区分这些功能。我想我明白当输出是指针时它无法区分。它不区分是否是指向整数的指针,浮点数包括它是否是数组。

有没有人有替代解决方案。我正在考虑使用class(*),但这是否能够判断它是否real pointer使用integer pointerclass is功能

4

0 回答 0