自定义数据结构

自定义数据类型;例如:坐标结构、包含X、Y值;矩形结构、包含长宽值。在实际开发工作中、往往会遇到需要处理多条数据或一个类型的数据任务时、将多个数据封装成一个结构体、将会是一个非常友好的操作;例如开发一个阅读APP、阅读APP中会涉及到对书本的处理、如果我们将书本结构封装成一个结构体、那么在开发过程中、对数据的管理或传递、都相对非常方便。

定义语法

一个合法的自定义结构类型使用“定义”关键字定义、其结构体中只能包含内部成员变量、成员变量个数无限制、但不能包含构造函数、自定义函数、事件或回调对象;同时内部成员变量不能使用任何修饰符;语法如下:

定义 结构体名称 为 结构
    变量 成员变量1 为 数据类型
    变量 成员变量2 为 数据类型
    ...
结束 定义

注:结构体中不支持一个变量语句定义多个成员变量、即每行只能定义一个变量成员。

创建结构体

在IDE中新建模块、选择结构体模板、点击确定即可;一个项目中可以创建多个结构体模块、每个结构体模块文件中可以定义多个结构;结构体模块文件后缀为:.st

注:在窗口中也可以定义结构体数据、但为了便于管理、建议将结构体数据定义在专门的文件中。

代码示例:

定义 书本 为 结构
    变量 书名 为 文本型
    变量 价格 为 整数型
    变量 描述 为 文本型
结束 定义

定义 坐标 为 结构
    变量 X 为 整数型
    变量 Y 为 整数型
结束 定义

事件 按钮1.被单击(来源对象 为 视图)
    变量 书本1 = 创建 书本()
    书本1.书名 = "汤头歌诀"
    书本1.价格 = 9
    书本1.描述 = "是清代汪昂撰古代医方著作、共一卷、刊于1694年、书中选录中医常用方剂300余方。"
    ' 方便传递数据、可以直接将 书本1 这个对象赋值给标签的标记
    标签1.标记 = 书本1

    变量 坐标1 = 创建 坐标()
    坐标1.X = 0
    坐标1.Y = 1
    标签2.标记 = 坐标1

    ' 结构体数据默认支持全成员构造函数
    变量 坐标2 = 创建 坐标(10,20)
    标签3.标记 = 坐标2
结束 事件

事件 按钮2.被单击(来源对象 为 视图)
    变量 书本对象 为 书本 = 标签1.标记
    调试输出("从标签1中取出储存的书本:" + 书本对象.书名 + ";" + 书本对象.价格)
结束 事件

注意:每个结构体数据都为全局数据类型、在整个项目中的模块、窗口中都可以使用、因此整个项目中不能包含相同名称的结构体。