摘要:
Object Pascal的指针一、类型指针的定义。对于指向特定类型的指针,在C中是这样定义的:int *ptr;char *ptr;与之等价的Object Pascal是如何定义的呢? varptr : ^Integer;ptr : ^char; 其实也就是符号的差别而已。二、无类型指针的定义。C中有void *类型,也就是可以指向任何类型数据的指针。Object Pascal为其定义了一个专门的类型:Pointer。于是,ptr : Pointer;就与C中的void *ptr;等价了。三、指针的解除引用。要解除指针引用(即取出指针所指区域的值),C 的语法是 (*ptr),Object 阅读全文
摘要:
Pascal 中的过程类型与C语言中的函数指针相似,为了统一说法,以下称函数指针。函数指针的声明只需要参数列表;如果是函数,再加个返回值。下面讲解指向非对象(一般的)函数/过程的函数指针。例如声明一个过程类型,该类型带一个通过引用传递的整型参数:type IntProc = procedure (var Num: Integer); //IntProc是指向过程的函数指针这个过程类型与任何参数完全相同的例程兼容,即用它声明的变量,可以指向任何此类函数,并通过其进行函数的调用。下面是一个兼容例程:procedure DoubleTheValue (var Value: Integer);beg. 阅读全文