第五课 结构类型,指针类型,变体类型
三,结构类型
包括集合类型,数组类型,记录类型,文件类型,类类型,类引用类型,接口类型。
(1)集合类型(Set)
集合类型是一群相同类型元素的组合,这些类型必须是有限类型如整型,布尔型,字符型,枚举型和子界型。在检查一个值是否属于一个特定集合时,集合类型非常有用,
集合类型的定义方法:Set of BaseType。例如:
Type
Tint=0..255; //BaseType为有序类型
T1=set of Tint; //定义集合类型
Tdate=set of (wed,mon,thu,sun,sat);
TChar=set of ('a','b','c');
Object Pascal 提供了几个用于集合计算的运算符,可以对集合增删元素,或对集合惊醒求焦急运算等。
①关系运算
用in运算符类判断一个给定的元素是否在以个集合中。
判断集合T1中是否有200: 判断TDate中是否没有Mon:
If 200 in T1 then //继续运行 if not (Mon in Tdate) then
②增删元素
用+ ,-运算符或Include() 和Exclude过程,可以对集合变量增删元素:
Include(T1,256); //在集合中增加256
Charset := Charset +['d'] //在集合中增加‘d’
③交集
用*运算符来计算两个集合的交集,表达式Set1*Set2
If {'a','b','c'}*CharSet={'a','b','c'}then
(2) 数组类型(Array)
数组类型是某种类型的有序组合,其中每一而元素的值由其相对位置来指定,可以在数组的某个位置上放置数据,并在需要时使用这些数据 。
(3)记录类型(Record)
记录是程序可以成组访问的一群数据的集合。
四, 指针类型(Pointer)
指针类型的变量指向内存空间的地址。定义形式:
Type PointerName = ^ typr ;
@运算符在变量前, 将获得变量的地址,并可以把地址赋予给同样数据类型的指
针
^ 在前 表示定义该类型的一个指针类型;
在后面 可以获得该指针指向的地址空间的内容。
Object Pascal语言中定义了一些标准的指针类型,可以直接使用,如表...
五, 过程和函数调用(Procedural)
六, 变体类型(Variant)
主要是为了支持OLE自动化操作。有些变量类型在编译期间是不确定的,而Variant能够在运行期间动态改变数据类型,这就是引入Variant类型的目的。
Variant支持所有的简单数据类型。