数据结构可以理解成一个一个数据表的结构,就象数据库中的一个表 你可以这样定义: TYPE STUDENT Mane as String Age as Long END TYPE在这个数据结构里有两个元素:名字NAME和年龄AGE分别是字符型和整形。 如果定义个数据结构只有一个元素,那又有什么愿意呢?直接用变量还来得快来得简单呢。
你可以把它理解成2维数组 a(1,1)表示第1个人的名字 a(1,2)表示第1个人的性别 a(2,1)表示第2个人的名字 a(2,2)表示第2个人的性别 这样也很麻烦如果用自定义TYPE A name as String Age as Long END TYPEa(1).name 表示第1个人名字 a(1).age 表示第1个人的性别 a(2).name 表示第2个人名字 a(2).age 表示第2个人的性别这样就会方便直观很多。当然,如果你非要用DIM也是完全可以做到的
A 如果一个对象有许多许多的属性,然后你要一个个赋值,然后你就不知道那些变量代表那些值,也不知道这些值所代表的东东有没有定义变量,这下就开始抓狂了 B 如果有许多值需要从一个函数中传出/入,用这个也好 C 有果有一个轻型的对象数组,用结构的开销就小很多
你可以这样定义:
TYPE STUDENT
Mane as String
Age as Long
END TYPE在这个数据结构里有两个元素:名字NAME和年龄AGE分别是字符型和整形。
如果定义个数据结构只有一个元素,那又有什么愿意呢?直接用变量还来得快来得简单呢。
是不是因为使用方便一些?
一个人有Name、Age、Sex等很多特征,若分别Dim变量,当你想转移一个人的数据时,就需很多赋值语句,而且容易出错,可读性也差,使用UDT后,你只需一条赋值语句就可整体转移。
同样,用Random方式读写UDT,可简单实现众多数据库的功能。UDT更象是一个简单的类,其中的项目好象是一个个属性,编码时你也会感到很轻松。当然,若对数据有完整性或管理需求,建议采用类封装,会更强健的。
a(1,1)表示第1个人的名字 a(1,2)表示第1个人的性别
a(2,1)表示第2个人的名字 a(2,2)表示第2个人的性别
这样也很麻烦如果用自定义TYPE A
name as String
Age as Long
END TYPEa(1).name 表示第1个人名字
a(1).age 表示第1个人的性别
a(2).name 表示第2个人名字
a(2).age 表示第2个人的性别这样就会方便直观很多。当然,如果你非要用DIM也是完全可以做到的
B 如果有许多值需要从一个函数中传出/入,用这个也好
C 有果有一个轻型的对象数组,用结构的开销就小很多