• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

delphi可变记录

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

 一直对可变记录不清楚,终于知道点什么也可还是不清楚,把别人的摘录下来了 

若记录是由一部分固定不变和另一部分变化部分是随固定部分中的某个数据
项的具体取值而定的数据项所组成的称为记录变体。带记录变体的记录类型定义有以下形式:
  type
   <类型标识符>=record
     <域名1>:<类型1>;
     <域名2>:<类型2>;
     ……
     <域名n-1>:<类型n-1>;
     case <标志域>:<类型n> of
      <常量表1>:<域表1>;
      <常量表2>:<域表2>;
      ……
      <常量表m>:<域表m>;
   end;
可变部分中的标识域可有可无
下面是几种结构体的定义
type
 TMyRcord=reocord
 A:integer;
 B:integer;
case C:integer of
 1:(D:string[20]);
 2: (E:Dword);
end;
这个结构体中的值域实际有5个;你可以对A,B,C,D,E,分别赋值;
如果赋值的顺序是这样 myrecord.d='dfd';myrecord.E:=2;那么d的值将被
E 覆盖掉,因为他们用的是同一地址;C可以任意付给整型值赋值;它只是提供给一个
标识作用;
TMr=record
 case integer of
 1(A:integer);
 2(B:sring[1]);
end;
这个结构体没有标识符只有类型;这里的integer只是表明这是一个可变记录
它的作用和下面的记录体是一样的
TMr2=record
case char of
'a':(a:integer);
'b':(b:string[10];
end;
char和integer只是一个标识作用


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap