ACLASS 函 数 - 图1ACLASS 函 数 - 图2ACLASS 函 数

ACLASS 函 数 - 图3将一个对象的类名和祖先类名存放到一个变量中

语 法

ACLASS( ArrayNam e, oExpression )

返 值 类 型数值型 参 数 描 述

ArrayName

ACLASS 函 数 - 图4ACLASS 函 数 - 图5ACLASS 函 数 - 图6ACLASS 函 数 - 图7ACLASS 函 数 - 图8ACLASS 函 数 - 图9ACLASS 函 数 - 图10ACLASS 函 数 - 图11ACLASS 函 数 - 图12ACLASS 函 数 - 图13指 定 存 放 类 名 的 数 组 名 如 果 指 定 的 数 组 名 不 存 在 V isual FoxPro 将 自 动 创建 此 数 组 如 果 指 定 的 数 组 已 存 在 但 它 的 大 小 不 足 以 容 纳 所 有 父 类 名 则V isual FoxPro 自 动 增 加 数 组 的 大 小 如 果 已 存 在 的 数 组 超 过 所 需 大 小 将 截掉 多 余 部 分 如 果 指 定 数 组 是 已 存 在 的 二 维 数 组 则 将 它 转 化 为 一 维 数 组

oExpression

ACLASS 函 数 - 图14ACLASS 函 数 - 图15ACLASS 函 数 - 图16ACLASS 函 数 - 图17ACLASS 函 数 - 图18ACLASS 函 数 - 图19指 定 一 个 对 象 此 对 象 的 类 名 及 其 父 类 名 将 存 放 在 指 定 的 数 组 中 oExpression 可 以 为 任 意 的 对 象 表 达 式 例 如 对 象 引 用 对 象 变 量 或 对 象 数组 元 素

说 明

ACLASS 函 数 - 图20ACLASS 函 数 - 图21ACLASS 函 数 - 图22ACLASS 函 数 - 图23ACLASS 函 数 - 图24ACLASS 函 数 - 图25ACLASS 函 数 - 图26ACLASS 函 数 - 图27ACLASS 函数创建一个一维数组 数组包含了指定对象的类名和祖先类名 第一个数组元素包含此对象的类名 第二个元素包含对象的父类名 第三个元素包含对象的祖父类名 依此类推

ACLASS 函 数 - 图28ACLASS 函 数 - 图29ACLASS 函 数 - 图30ACLASS 函 数 - 图31ACLASS 函 数 - 图32ACLASS 函 数 - 图33ACLASS 函 数 - 图34ACLASS 函数返回数组中类名的数目 如果不能创建此数组 则 ACLASS 函数的返回值为 0

示 例

ACLASS 函 数 - 图35ACLASS 函 数 - 图36ACLASS 函 数 - 图37ACLASS 函 数 - 图38ACLASS 函 数 - 图39ACLASS 函 数 - 图40ACLASS 函 数 - 图41ACLASS 函 数 - 图42ACLASS 函 数 - 图43ACLASS 函 数 - 图44下面的示例从 Visual FoxPro 的 Form 基类创建了两个自定义类 FormChild 和FormGrandChild ACLASS 用来创建一个包含类名称 名为 ACLASS 函 数 - 图45 ACLASS 函 数 - 图46 ACLASS 函 数 - 图47 的数组 并且会显示出来

CLEAR

frmMyForm = CREATEOBJECT("FormGrandChild")

ACLASS 函 数 - 图48ACLASS 函 数 - 图49FOR nCount = 1 TO ACLASS 函 数 - 图50 ACLASS 函 数 - 图51 gaNewarray, frmMyForm ACLASS 函 数 - 图52 && 生成数组

? gaNewarray(nCount) && 显示 类名

ENDFOR

RELEASE frmMyForm

DEFINE CLASS FormChild AS FORM ENDDEFINE

DEFINE CLASS FormGrandChild AS FormChild ENDDEFINE

请 参 阅

ACLASS 函 数 - 图53ADD CLASS , AMEMBERS ACLASS 函 数 - 图54 , CREATE CLASS , CREATE CLASSLIB ,

CREATEOBJECT ACLASS 函 数 - 图55 ACLASS 函 数 - 图56 , DEFINE CLASS