Covariant Script 结构和类
7.1 定义
struct 结构名 结构体 end
结构定义后结构名就可以作为类型名使用
结构体中的变量或函数称为结构体的成员。在结构体中只允许定义成员
可用class
代替struct
关键字编写程序,两者无实质区别
7.2 成员函数
7.3 派生和继承
struct 结构名 extends 父类结构名 结构体 end
派生结构将引入父类结构的所有成员并自动插入一个名为 parent
的成员
parent
成员是结构实例本身的父类实例
如果派生类想要重新实现父类函数,可使用 override
关键字覆写
function 函数名(参数列表(可选)) override 语句块 end
7.4 控制结构的行为
构造函数
function initialize() 语句块 end
结构被构建时调用,无返回值(返回值无意义)
复制函数
function duplicate(orig) 语句块 end
结构被复制时调用,参数为被复制的实例,返回值无意义
等于比较函数
function equal(orig) 语句块 return true end
结构被比较时调用,参数为等号右边的实例,必须返回true
(代表相等)或 false
(代表不相等)
析构函数
function finalize() 语句块 end
结构被回收时调用,返回值无意义
字符串转换函数
function to_string() 语句块 return new string end
结构被转换成字符串时调用,必须返回字符串