派生类型定义

Fortran 2003 引入了面向对象编程的支持。此功能允许利用现代编程技术。派生类型使用以下格式定义:

TYPE [[, attr-list] :: ] name [(name-list)]
   [def-stmts]
   [PRIVATE statement or SEQUENCE statement]. . .
   [component-definition]. . .
   [procedure-part]
END TYPE [name]

哪里,

  • attr-list - 属性说明符列表
  • name - 派生数据类型的名称
  • name-list - 由逗号分隔的类型参数名称列表
  • def-stmts - 名称列表中指定的类型参数的一个或多个 INTEGER 声明
  • component-definition - 定义派生类型组件的一个或多个类型声明语句或过程指针语句
  • procedure-part - 一个 CONTAINS 语句,可选地后跟一个 PRIVATE 语句,以及一个或多个过程绑定语句

例:

type shape
    integer::color
end type shape