| 
 | 
 
原代码: 
type, private :: field_type !{ 
  character(len=fm_field_name_len)                    :: field_type 
  character(len=fm_string_len)                    :: field_name 
  integer                                             :: model, num_methods 
  type(method_type)                                   :: methods(MAX_FIELD_METHODS) 
end type field_type !} 
 
编译的平台是linux,GNU上的gfortran 
报错信息: 
 'field_type' at (1) has no IMPLICIT type 
 
猜测,我在这个自定义类型下面看到也有一个field_type的定义但是在另一个自定义类型里面: 
type, private :: field_def  !{ 
  character (len=fm_field_name_len)                   :: name 
  integer                                             :: index 
  type (field_def), pointer                           :: parent => NULL() 
  integer                                             :: field_type 
  integer                                             :: length 
  integer                                             :: array_dim 
  integer                                             :: max_index 
  type (field_def), pointer                           :: first_field => NULL() 
  type (field_def), pointer                           :: last_field => NULL() 
  integer, pointer, dimension(:)                      :: i_value => NULL() 
  logical, pointer, dimension(:)                      :: l_value => NULL() 
  real, pointer, dimension(:)                         :: r_value => NULL() 
  character(len=fm_string_len), pointer, dimension(:) :: s_value => NULL() 
  type (field_def), pointer                           :: next => NULL() 
  type (field_def), pointer                           :: prev => NULL() 
end type field_def  !} 
 
 
 
这个会不会有影响呢? 
 
 
 |   
 
 
 
 |