3
我想寫一個抽象類型是否可以在Fortran 2003的類型中實現「抽象」變量?
type, abstract :: Vehicle
real, dimension(:), allocatable:: Wheels
contains
procedure (Compute_Weight), deferred :: VehicleWeight
end type Vehicle
即我想有一個陣列中的抽象類型的佔位符以這樣的方式,它可以被覆蓋或擴展類型與重新定義像
type, extends(Vehicle) :: Bike
allocate(Wheels(2))
contains
procedure :: VehicleWeight => BikeWeight
end type Bike
type, extends(Vehicle) :: Car
allocate(Wheels(4))
contains
procedure :: VehicleWeight => CarWeight
end type Car
GCC編譯器抱怨(正當我猜),以及onlys解決方案,我可以找到這個問題僅僅是不是抽象類型聲明的分配功能,並直接與內正確的大小聲明變量方式。 不過,我希望有一種佔位符來強制執行Wheels(原型)描述的基本屬性。 I