Skip to content

OVERRIDE


方法属性;指定方法必须重写一个虚方法

语法

vb
Type typename Extends basename

...
Declare Sub|Function|Operator|Property|Destructor ... ( [parameterlist] ) [[ byref ] As datatype] Override
...

End Type

描述

在方法声明中,Override 可用于指示该方法预期要重写基类中的 virtualabstract 方法。若该方法未重写任何内容,编译器将报错(只有非静态方法才能重写虚方法或抽象方法)。

使用 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 Function

end GeSHi

与QB的差异

  • FreeBASIC 新增

参见

  • Virtual, Abstract

返回 目录

基于 FreeBASIC 官方文档翻译 如有侵权请联系我们删除
FreeBASIC 是开源项目,与微软公司无隶属关系