CwordArray

CwordArray - 图1

CWordArray 类 支 持 16 位 字 的 数 组 。

CWordArray 的 成 员 函 数 与 CObArray 类 的 成 员 函 数 类 似 。 因 为 这 种 相 似 性 , 你可 以 利 用 CObArray 的 参 考 文 档 找 到 成 员 函 数 的 说 明 。 每 当 你 看 到 CObject 指针 被 用 作 函 数 参 数 或 返 回 值 时 , 就 用 W O R D 来 替 换 。

CObject* CObArray::GetAt( int <nIndex> ) const;

例 如 , 被 转 换 为

WORD CWordArray::GetAt( int <nIndex> ) const;

CWordArray 合 并 了 IMPLEMENT_SERIAL 宏 以 支 持 它 的 元 素 的 串 行 化 和 转储 。 如 果 字 数 组 被 保 存 到 档 案 中 , 可 以 通 过 重 载 的 插 入 操 作 符 或 使 用CObject::Serialize 成 员 函 数 , 则 每 个 元 素 将 依 次 被 串 行 化 。

注意 在 使 用 数 组 之 前 , 应 使 用 SetSize 来 设 置 它 的 大 小 并 为 之 分 配 内

存 。 如 果 你 没 有 使 用 SetSize , 则 在 数 组 中 加 入 元 素 时 会 引 起 频 繁 的 重分 配 和 拷 贝 。 频 繁 的 重 分 配 和 拷 贝 是 效 率 低 下 的 , 会 引 起 内 存 碎 片 。

如 果 你 需 要 转 储 数 组 中 的 单 个 元 素 , 则 必 须 将 转 储 环 境 的 深 度 设 为 1 或 更 大 。

有 关 使 用 CWordArray 的 更 多 信 息 参 见 联 机 的 《 V isual C++ 程 序 员 指 南 》 中 的文 章 “ 集 合 ” 。

#include <afxcoll.h>

CWordArray 类 成 员

构造

CWordArray 构 造 一 个 空 的 字 数 组

界 限

GetSize 获 得 数 组 中 元 素 的 数 目

GetUpperBound 返 回 最 大 的 有 效 索 引

SetSize 设 置 数 组 中 将 包 含 的 元 素 的 数 目

操作

FreeExtra 释 放 在 当 前 上 界 之 上 的 没 有 使 用 的 内 存

续 表

RemoveAll 从 数 组 中 清 除 所 有 的 元 素

访问元素

GetAt 返 回 给 定 索 引 处 的 值

SetAt 为 给 定 的 索 引 设 置 值 ; 数 组 不 允 许 增 长ElementAt 返 回 对 数 组 中 元 素 指 针 的 临 时 引 用GetData 允 许 访 问 数 组 中 的 元 素 。 可 以 为 NULL

增长数组

SetAtGrow 设 置 给 定 索 引 处 的 值 ; 如 果 有 必 要 则 增 长 数 组

Add 在 数 组 的 末 尾 加 入 元 素 ; 如 果 有 必 要 则 增 长 数 组

Append 将 一 个 数 组 追 加 在 另 一 个 数 组 后 面 ; 如 果 有 必 要 则 增 长 数 组

Copy 将 一 个 数 组 拷 贝 到 另 一 个 数 组 。 如 果 有 必 要 则 增 长 数 组

插入 /清 除

InsertAt 在 指 定 索 引 处 插 入 一 个 元 素 ( 或 其 它 数 组 中 的 全 部 元 素 )

RemoveAt 清 除 指 定 索 引 处 的 元 素

操作符

Operator [ ] 设 置 或 获 得 指 定 索 引 处 的 元 素