OVERRIDE
- 来源: https://www.freebasic.net/wiki/wikka.php?wakka=KeyPgOverride
- 最后更新: 2018-02-04
方法属性;指定方法必须重写一个虚方法
语法
vb
Type typename Extends basename
...
Declare Sub|Function|Operator|Property|Destructor ... ( [parameterlist] ) [[ byref ] As datatype] Override
...
End Type描述
在方法声明中,Override 可用于指示该方法预期要重写基类中的 virtual 或 abstract 方法。若该方法未重写任何内容,编译器将报错(只有非静态方法才能重写虚方法或抽象方法)。
使用 Override 并非重写虚方法或抽象方法的必要条件,但强烈建议使用,因为它有助于防止无意中的错误(名称或签名不匹配)。
Override 只能在 UDT 块中的方法声明上指定,不能在方法体上指定,因为它只是继承层次结构上下文中的编译期检查,不会以任何方式影响方法本身。
Override 只在成员过程声明末尾被识别为关键字,在其他位置仍可用作标识符。
示例
start GeSHi
vb
Type A Extends Object
Declare Virtual Sub f1( )
Declare Virtual Function f2( ) As Integer
End Type
Type B Extends A
Declare Sub f1( ) Override
Declare Function f2( ) As Integer Override
End Type
Sub A.f1( )
End Sub
Function A.f2( ) As Integer
Function = 0
End Function
Sub B.f1( )
End Sub
Function B.f2( ) As Integer
Function = 0
End Functionend GeSHi
与QB的差异
- FreeBASIC 新增
参见
Virtual,Abstract
返回 目录