文件名称:其它的对象类型-京东应用架构设计
文件大小:7.56MB
文件格式:PDF
更新时间:2024-06-30 04:57:17
Delphi 2010 语法
6.8 其它的对象类型 1. 高级记录类型 在第三章学习记录类型时,我们遗留了高级记录类型未介绍。在本章开头时我们使用 了高级记录类型作为范例,通过这些范例,读者可能对高级记录类型有了或多或少的猜想 或者说是认识,但总归还是有一些迷惑。那么,本节我们就彻底解决这份迷惑。 奇怪的很,当我们正式接触这种类型时却发现没什么可讲。至少在了解了对象的相关 概念后,所谓的高级记录类型充其量也只是一个低级类类型。读者在记住二者区别后,在 一般场合完全可以将高级的记录类型当成类来使用。 高级的记录类型与类类型的区别如下: 1. 记录类型不支持继承机制。也就是说,这种类型就是天地所生,而且还没有后代。 2. 记录可以含有变体部分,类不能。 3. 记录类型是值类型,而类是引用类型。所以记录类型在传递时会通过复制来进行值传 递。由于记录在栈中分配(除非是全局的记录类型或手动分配到堆中),所以记录类 型的对象在声明后可直接使用,无需调用构造函数。 4. 类不支持运算符重载,而记录支持。 5. 记录类型可以声明一个有参数的构造函数,但不能声明任何析构函数。 6. 记录类型中不能有任何形式的动态绑定的方法,即不能含有虚方法、动态方法、消息 方法。 7. 记录类型不能实现接口