【发布时间】:2022-01-17 23:54:43
【问题描述】:
在 fortran 中,您可以在声明时为变量定义一个默认值,该变量可以稍后在代码中被覆盖,还可以为派生类型数组中的所有条目提供默认值,如下所示:
PROGRAM test
TYPE data
INTEGER :: j=0
CHARACTER(len=10)::label="hello"
END TYPE data
TYPE(data) :: obj(2)
! overwrite the default of 0 in the first array entry
obj(1)%j=6 ! etc etc
END PROGRAM test
一切都非常简单。但是,用于为派生数据类型的所有数组条目定义一组默认值的语法是什么?我查了一些教程,但没有一个解决这个问题。换句话说,默认情况下j=0 在obj%j 的第一个元素中,并在第二个元素中设置为1,依此类推...
PROGRAM test
TYPE data
INTEGER :: j
CHARACTER(len=10)::label
END TYPE data
TYPE(data) :: obj(2)=??? ! what do I put to define an array of default types?
! for example these might be my desired default values
obj(1)%j=0
obj(1)%label="bad"
obj(2)%j=1
obj(2)%label="good"
END PROGRAM test
【问题讨论】:
标签: fortran derived-types