我想强制继承类在Fortran>= 2008中定义析构函数。
到目前为止,我已经尝试了以下几种变体:
type, abstract :: parent_class_t
contains
final, deferred, pass :: cleanup
end type
甚至不编译。 我如何实现这个目标?
最终绑定不继承。每种类型都可以声明自己的类型。完成子派生类型时,将自动调用父完成过程。抽象类型不能有最终的子例程,因为它没有意义。
该标准(2018年草案(包含以下解释说明:
注7.46最终子例程不是通过类型扩展继承的 并且不能被覆盖。父类型的最终子例程是 在扩展类型的任何其他最终子例程之后调用 叫。
正如Francescalus所指出的,语法是:
R753最终过程 stmtFINAL
[ :: ]最终子例程名称列表
不能指定任何属性。