2011-05-12 23 views
0

假设我有以下设置可以是一个类型的成员是一个目标?

type BarType 
    integer :: i 
end type 

type FooType 
    type(BarType) :: bar 
end type 

我想有另一种类型的

type BazType 
    type(BarType), pointer :: barPtr 
end type 

,并设置barPtr指向foo%bar。要做到这一点,我将不得不声明type(BarType), target :: bar,但我得到了一个错误。我没有进一步调查,并决定改变策略,但只是为了好奇,你知道这是否允许吗?

回答

1

我不是标准的专家,但是我读到它的方式,派生类型的组件不能具有target属性;如果要将指针与此组件关联,则必须将父对象声明为target

相关问题