linux社区爱心援助Linux认证系列教程业界动态站务新闻公司招聘网络学院网址大全LPI专题CISCO专题
设为首页
加入收藏
管理团队
JSP  
JAVA  
PERL  
 您的位置:首页 > 开发语言 > Delphi >
栏目导栏
  php
  JSP
  ASP
  asp.net
  JAVA
  c/c++/c#
  perl
  JavaScript
  Basic
  Delphi
资料搜索
热门文章
·HexToStr函数和StrToHex函数
·Delphi中的进制转换
·delphi轻松设置无边框透明窗体
·delphi第三方控件安装(Ehlib)
·DELPHI组件安装全攻略
·delphi动态创建控件
·开发工具比较Visual C++ VS De
·delphi完整身份证效验程序实例
·delphi中的Format函数详解
·delphi编程获取打印机的打印任
·如何判断文本文件的编码格式
·深入研究Variant数组
·用delphi编写网络游戏的外挂
·Delphi技巧-用户自定义数据类型
·delphi设置控件透明
最新文章
·在应用程序中跟踪MOUSE的坐标
·压缩和修复MS Access 2000文件
·DELPHI 6.0 动画制做
·怎样在Delphi中调用LastError信
·怎样得到主域服务器名称
·怎样利用递归实现删除某一目录
·读出主键下所有项
·如何制作照片底片效果的图像(
·获得Modem的状态
·WebBrowser屏幕滚动的实现,设
·有关字符串处理的小技巧
·Delphi建立键盘鼠标动作纪录与
·Delphi中布尔类型辨析
·DELPHI程序注册码设计
·图形的不规则的Copy
Google
 
delphi2006语言新特性:Record类型高级用法
[ 作者:  加入时间:2007-10-30 15:05:26  来自:Linux联盟收集整理 ]
Records新特性4S4Linux联盟
4S4Linux联盟
delphi语言在传统的Records类型的基础上增加了许多像类一样的高级功能,如:Records可以有属性和方法(包括构造constructors),类属性,类方法,类静态字段和内嵌类型。下面这个示例演示定义一个功能像类一样的Records: 4S4Linux联盟
4S4Linux联盟
type4S4Linux联盟
TMyRecord = record4S4Linux联盟
type4S4Linux联盟
TInnerColorType = Integer;4S4Linux联盟
var4S4Linux联盟
Red: Integer;4S4Linux联盟
class var4S4Linux联盟
Blue: Integer;4S4Linux联盟
procedure printRed();4S4Linux联盟
constructor Create(val: Integer);4S4Linux联盟
property RedProperty: TInnerColorType read Red write Red;4S4Linux联盟
class property BlueProp: TInnerColorType read Blue write Blue;4S4Linux联盟
end;4S4Linux联盟
4S4Linux联盟
constructor TMyRecord.Create(val: Integer);4S4Linux联盟
begin4S4Linux联盟
  Red := val;4S4Linux联盟
end;4S4Linux联盟
4S4Linux联盟
procedure TMyRecord.printRed;4S4Linux联盟
begin4S4Linux联盟
  writeln('Red: ', Red);4S4Linux联盟
end;
4S4Linux联盟
虽然现在records能实现许多类的特性,但它与类之间还是有一些不同:4S4Linux联盟
1 records不支持继承4S4Linux联盟
2 records能含有variant parts(呵呵,不知翻译成什么能说明白,就是case部分),类不可以4S4Linux联盟
3 records是值类型,可以通过赋值拷贝,类是参考类型,因此不能通过赋值来拷贝。4S4Linux联盟
4 records在win32和.net上允许操作符重载,类仅在.net上支持操作符重载4S4Linux联盟
5 records使用一个缺省的没有参数的构造函数(constructor)自动创建,而类必须明确的创建。在record中用户定义的构造函数必须有一个或多个参数。4S4Linux联盟
6 record类型不能有析构函数(destructors)4S4Linux联盟
7 虚方法(那些指定了virtual、dynamic和message关键字的)不能使用在record类型中4S4Linux联盟
8 record类型在win32开台上不能实现接口,在.net平台上能实现接口4S4Linux联盟
Linux联盟收集整理 ,转贴请标明原始链接,如有任何疑问欢迎来本站Linux论坛讨论
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
 ·delphi2006语言新特性:帮助类(Class Helpers)  (2007-10-30 15:06:03)
 ·Delphi2006下载安装预览  (2007-10-12 21:44:14)