我被告知为了我的博士学位,我必须学习fortran 2003语言。 我以前从未使用过OOP程序或Fortran。 我试图理解类型和类之间的区别。 我知道类是用“TYPE”关键字声明的,但我也看到过使用“CLASS”关键字的示例,所以我感到困惑。 希望这样说得清楚。
我被告知为了我的博士学位,我必须学习fortran 2003语言。 我以前从未使用过OOP程序或Fortran。 我试图理解类型和类之间的区别。 我知道类是用“TYPE”关键字声明的,但我也看到过使用“CLASS”关键字的示例,所以我感到困惑。 希望这样说得清楚。
type
用于声明派生类型,最好不要养成认为 type
用于声明所谓的类
的习惯,这可能是从外语中引入的。class
在受限情况下使用,表示指定类型或其任何扩展类型
。 扩展类型 是Fortran术语,表示一种扩展了另一种类型的类型,本质上是一种专业化或继承自另一种类型。在过程虚拟参数列表和具有属性allocatable
或属性pointer
的实体声明中使用class
的受限情况。 class
实体在运行时获得动态type
,其动态类型可能会因运行而异,也可能在程序的单次执行中发生变化。