C S tringArray
CStringArray 类 支 持 CString 对 象 数 组 。
CStringArray 的 成 员 函 数 类 似 于 CObArray 类 的 成 员 函 数 。 由 于 具 有 这 些 相 似性 , 你 可 以 参 考 关 于 CObArray 的 参 考 文 件 来 获 取 CStringArray 成 员 函 数 的 详细 说 明 。 如 果 在 说 明 中 看 到 某 一 函 数 的 返 回 值 是 一 个 指 向 CObject 对 象 的 指 针 , 则 可 以 用 一 个 CString( 而 不 是 一 个 CString 指 针 ) 来 代 替 它 。 如 果 看 到 某 一 函数 的 参 数 是 一 个 指 向 CObject 的 指 针 , 则 可 以 用 LPCTSTR 来 代 替 它 。
例 如 , 可 以 将
CObject* CObArray::GetAt( int <nIndex> ) const;
转 换 为
CString CStringArray::GetAt( int <nIndex> ) const;
和 将
void SetAt( int <nIndex>, CObject* <newElement> )
转 换 为
void SetAt( int <nIndex>, LPCTSTR <newElement> ) 。
CStringArray 与 IMPLEMENT_SERIAL 宏 联 合 起 来 支 持 其 元 素 的 连 续 和 转 储 。如 果 一 个 CString 对 象 数 组 被 用 一 个 重 载 的 插 入 操 作 符 或 Serialize 成 员 函 数 保存 到 一 个 存 档 中 , 则 它 的 每 一 个 元 素 都 按 顺 序 连 续 。
注 意 在 使 用 一 个 数 组 之 前 , 使 用 SetSize 来 建 立 它 的 大 小 并 给 它 分 配
内 存 。 如 果 你 不 使 用 SetSize , 则 向 数 组 中 添 加 元 素 将 导 致 数 组 被 频 繁 地拷 贝 和 分 配 内 存 。 频 繁 分 配 内 存 和 拷 贝 会 导 致 效 率 低 和 内 存 零 碎 。
如 果 你 需 要 数 组 中 个 别 字 符 串 元 素 的 转 储 , 则 应 该 将 转 储 环 境 的 深 度 设 置 为 1 或 更 大 。 当 一 个 CString 数 组 被 删 除 时 , 或 当 其 中 的 个 别 元 素 被 删 除 时 , 字 符串 内 存 被 根 据 需 要 释 放 。
有 关 使 用 CStringArray 的 更 多 信 息 , 参 见 “ V isual C++ 程 序 员 指 南 ” 中 的 文 章“ 集 合 ” 。
#include <afxcoll.h>
CStringArray 类 成 员
Construction
CStringArray 构 造 一 个 空 的 CString 对 象 数 组
Bound s GetSize 获 取 这 个 数 组 中 的 元 素 数 目
GetUpperBound 返 回 最 大 的 有 效 索 引
SetSize 设 置 这 个 数 组 中 包 含 的 元 素 数 目
Operations
FreeExtra 释 放 当 前 数 组 边 界 之 外 的 未 使 用 的 所 有 内 存
RemoveAll 从 数 组 中 删 除 所 有 元 素
Elemen t Acces s GetAt 返 回 位 于 给 定 索 引 处 的 值
SetAt 设 置 给 定 索 引 处 的 元 素 的 值 ; 不 得 将 数 组 增 大
ElementAt 返 回 对 数 组 中 的 某 一 元 素 指 针 的 临 时 引 用
GetData 对 数 组 中 的 元 素 允 许 的 访 问 。 可 以 是 NULL
Growin g th e Arra y SetAtGrow 设 置 给 定 索 引 处 的 值 , 如 果 必 要 的 话 可 以 增 长 数 组Add 在 数 组 的 末 尾 添 加 一 个 元 素 ; 可 根 据 需 要 增 长 数 组
Append 向 数 组 中 添 加 另 一 个 数 组 ; 如 果 必 要 的 话 可 增 长 数
组
Copy 将 另 一 个 数 组 拷 贝 到 此 数 组 中 ; 如 果 必 要 的 话 可 增长 数 组
Insertion/Remova l InsertAt 在 指 定 索 引 处 插 入 一 个 元 素 ( 或 者 是 另 一 个 数 组 中
的 所 有 元 素 )
RemoveAt 删 除 指 定 索 引 处 的 一 个 元 素
Operator s operator 设 置 或 获 取 在 指 定 索 引 处 的 元 素