2011年12月30日

初探Object Pascal的类(七)

摘要: 关于Self 所有的类都有一个隐含的字段叫Self,在内存中Self是一个指向类实例的指针。 首先我们来看看,如果Self不是隐含字段的话,那么TMyRec类到底是一个什么样子: TMyRect = class private Self: TMyRect; { Self隐含字段} Left: Integer; Top: Integer; Right: Integ... 阅读全文

posted @ 2011-12-30 02:15 pchmonster 阅读(847) 评论(0) 推荐(1) 编辑

初探Object Pascal的类(六)

摘要: 方法 方法是属于类的函数和过程,它们相对于类是局部的,并且在类的外部是不存的。只有在类的内部或者通过类的实例才能调用方法,方法能存取所有的公用的、保护的和私有的字段。方法可在private、protected或者public段中声明,要设计一个比较好的类,应该考虑哪些方法应该放在类中。 公用方法(Public method)和属性(property)代表着用户与类的接口。通过公用方法,类的使用... 阅读全文

posted @ 2011-12-30 02:10 pchmonster 阅读(715) 评论(0) 推荐(0) 编辑

初探Object Pascal的类(五)

摘要: 字段 简而言之,类的字段是在类的声明中加以声明的变量,它们可以看作是具有类作用域的变量,除了类字段的存取级别可以声明为私有(private)、公用(public)或保护(protected)并加以控制外,类的字段本质与记录类型的字段是一样的。私有和保护字段对于类来说是私有的,在类的外部是看不见的;然而对于公用字段,只需要一个对象,在类的外部就可以存取。 以前面的TMyRect类为例,它没有公用... 阅读全文

posted @ 2011-12-30 02:07 pchmonster 阅读(718) 评论(0) 推荐(0) 编辑

初探Object Pascal的类(四)

摘要: 类的析构函数 析构函数也是一种特殊的方法,此方法在对象消失前会被自动调用。 析构函数可以看成是构造函数的对立面,它通常用来释放类所占的内存,或者做一些清除工作。一个类不一定必须要有一个析构函数,因为基本的类析构函数可以代替。像构造函数一样,析构函数也没有返回值。 尽管类可以有多重析构函数,但它不具有一般性,若只有一个析构程序,就应该把它命名为Destroy,这不只是一个习惯。当要释放类的实例... 阅读全文

posted @ 2011-12-30 02:04 pchmonster 阅读(974) 评论(1) 推荐(0) 编辑

初探Object Pascal的类(三)

摘要: 类的构造函数 Object Pascal中的类有一种特殊的方法叫构造函数。 构造函数是一种用来建立实例类的方法。 构造函数用来初始化任何类成员变量,为类分配所必须的内存,或者做任何其他初始化工作。 在上一讲中定义的TVehicle就没有构造函数,若不提供一个构造函数,当建立类时,就会用隐藏的类构造程序(Object Pascal所有类都是从TObject 派生,TObject类有一个构造函... 阅读全文

posted @ 2011-12-30 01:57 pchmonster 阅读(1342) 评论(1) 推荐(0) 编辑

初探Object Pascal的类(二)

摘要: 类的存取级(可见性) 类有五个存取级(可见性): 私有的(Private) 公有的(Public) 保护的(Protected) 公布的(Published) 自动的(Automated) 作为一个程序员,不仅要创建类而且要使用类。在团队编程中,一些程序员是类的创建者,而另一些程序员是类的使用者。要理解类存取级在类操作中的所担当的角色,首先必须理解怎... 阅读全文

posted @ 2011-12-30 01:43 pchmonster 阅读(1937) 评论(1) 推荐(4) 编辑

2011年12月28日

初探Object Pascal的类(一)

摘要: 类是什么? 类(class)是字段和方法(函数和过程)的集合,并把这些字段和方法集中在一起完成一项特定的编程任务,在这种情况下,类也称为封装任务。 类具有以下性能: 控制存取的能力、构造程序(constructor)、析构程序(destructor)、字段(field)、方法(函数和过程)、隐含的特殊指针Self 在进一步讲解这些性能之前,我们先看看一个例子怎么使用一个类,以典型的Wind... 阅读全文

posted @ 2011-12-28 15:09 pchmonster 阅读(1478) 评论(1) 推荐(2) 编辑

指针(Pointer)

摘要: 指针是存放指定类型(或未定义类型)变量内存地址的变量,因此指针间接引用一个值。 指针可以分为两大类:无类型指针(Untyped Pointer)和有类型指针(Typed Pointer)。 直接用Pointer声明的变量就是无类型指针,可以在使用时指向任何数据类型。有类型指针所能指向的数据是固定类型的,至少必须是兼容的,比如PInteger不能指向一个字符串,但可以指向一个Byte或者Word... 阅读全文

posted @ 2011-12-28 13:31 pchmonster 阅读(4436) 评论(6) 推荐(4) 编辑

强制类型转换(Casting)

摘要: 强制类型转换(Cast)是指编译器把另一种不同类型的数据当成某一种数据类型处理。也叫类型强制转换(type cast)。 编译器在调用一个函数时对形参和实参的类型匹配的检查是严格的。因此为了能通过编译检查,经常需要把一个变量的类型转换为另一个变量的类型。 例如下面的例子中,将Char转化为Integer和Byte类型: program Project1;{$APPTYPE CONSOLE}u... 阅读全文

posted @ 2011-12-28 10:32 pchmonster 阅读(2674) 评论(0) 推荐(0) 编辑

2011年12月27日

Object Pascal数据类型全家福

摘要: 根据Delphi在线帮助,绘制了如下的全家福,所有数据类型都按照各自的辈分站好了位置。 1、Ordinal有序类型 Object Pascal将Ordinal和Real归类于Simple(简单)旗下。 Integer基本类型是Integer和Cardinal,它们都是32位的,操作系统和CPU可以花费最少的时间处理它们。 Character基本类型是Char,AnsiChar和Char... 阅读全文

posted @ 2011-12-27 13:28 pchmonster 阅读(2590) 评论(2) 推荐(1) 编辑

导航