在派生的
UDT构造函数中指定基本UDT的初始值
语法
Base ( constructor-parameters... )
or:
Base UDT-initializer
说明
Base初始化程序可以在派生UDT的构造函数的顶部使用。它允许指定用于初始化基础对象的显式构造函数调用或UDT初始化器。它将替换隐式默认初始化,并且必须出现在其使用的构造函数中的任何其他语句之上。
注意:与“
Base( )”不同,“
Base.Constructor( )”语句不会替换由派生UDT的构造函数完成的隐式默认初始化,通常不能合法使用,因为它将导致两个构造函数调用基础对象
例子
Type SimpleParent
As Integer a, b, c
End Type
Type Child extends SimpleParent
Declare Constructor( )
End Type
Constructor Child( )
''简单的UDT初始化器
Base( 1, 2, 3 )
End Constructor
Type ComplexParent
As Integer i
Declare Constructor( ByVal As Integer = 0 )
End Type
Constructor ComplexParent( ByVal i As Integer = 0 )
this.i = i
End Constructor
Type Child extends ComplexParent
Declare Constructor( )
Declare Constructor( ByRef As Child )
End Type
Constructor Child( )
''基本UDT构造函数调用
Base( 1 )
End Constructor
Constructor Child( ByRef rhs As Child )
''基本UDT构造函数调用
Base( rhs.i )
End Constructor
方言差异
与QB差别
参考