C S tringList

CStringList 类 支 持 CString 对 象 的 列 表 。 所 有 的 比 较 都 是 通 过 值 比 较 来 完 成 的 , 这 意 味 着 不 是 比 较 字 符 串 的 地 址 而 是 比 较 字 符 串 中 的 字 符 。

CStringList 的 成 员 函 数 类 似 于 类 CObList 类 的 成 员 函 数 。 由 于 具 有 这 些 相 似 性 , 你 可 以 参 考 关 于 CObList 的 参 考 文 件 来 获 取 CStringList 成 员 函 数 的 详 细 说 明 。如 果 在 说 明 中 看 到 某 一 函 数 的 返 回 值 是 一 个 指 向 CObject 对 象 的 指 针 , 则 可 以用 一 个 CString( 而 不 是 一 个 CString 指 针 ) 来 代 替 它 。 如 果 看 到 某 一 函 数 的 参

数 是 一 个 指 向 CObject 的 指 针 , 则 可 以 用 LPCTSTR 来 代 替 它 。例 如 , 可 以 将

CObject*& CObList::GetHead() const;

转 换 为

CString& CStringList::GetHead() const;

和 将

POSITION AddHead( CObject* <newElement> );

转 换 为

POSITION AddHead( LPCTSTR <newElement> );

CStringList 与 IMPLEMENT_SERIAL 宏 联 合 起 来 支 持 其 元 素 的 连 续 和 转 储 。 如果 一 个 CString 对 象 列 表 被 用 一 个 重 载 的 插 入 操 作 符 或 Serialize 成 员 函 数 保 存到 一 个 存 档 中 , 则 它 的 每 一 个 元 素 都 按 顺 序 连 续 。

如 果 你 需 要 数 组 中 个 别 字 符 串 元 素 的 转 储 , 则 应 该 将 转 储 环 境 的 深 度 设 置 为 1

或 更 大 。

当 一 个 CStringList 对 象 被 删 除 时 , 或 当 它 的 元 素 被 删 除 时 , 则 相 应 的 CString

对 象 被 删 除 。

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

#include <afxcoll.h>

C StringList 类 成 员

Construction

CstringList 构 造 一 个 空 的 CString 对 象 列 表

Head/Tai l Acces s GetHead 返 回 此 列 表 ( 不 能 是 空 的 ) 中 头 部 的 元 素

GetTail 返 回 此 列 表 ( 不 能 是 空 的 ) 中 尾 部 的 元 素

Operations

RemoveHead 从 列 表 的 头 部 删 除 元 素

RemoveTail 从 列 表 的 尾 部 删 除 元 素

AddHead 在 列 表 的 头 部 添 加 一 个 元 素 ( 或 者 是 另 一 个 列 表 中

的 所 有 元 素 ) , 即 产 生 一 个 新 的 头 部

AddTail 在 列 表 的 尾 部 添 加 一 个 元 素 ( 或 者 是 另 一 个 列 表 中的 所 有 元 素 ) , 即 产 生 一 个 新 的 尾 部

RemoveAll 删 除 此 列 表 中 的 所 有 元 素

Iteration GetHeadPosition 返 回 列 表 中 的 头 部 元 素 的 位 置

GetTailPosition 返 回 列 表 中 尾 部 元 素 的 位 置

GetNext 获 取 用 于 重 复 的 下 一 个 元 素

GetPrev 获 取 用 于 重 复 的 前 一 个 元 素

Retrieval/ M odificatio

n GetAt 获 取 给 定 位 置 处 的 元 素

SetAt 设 置 给 定 位 置 处 的 元 素

RemoveAt 从 此 列 表 中 删 除 由 位 置 指 定 的 一 个 元 素

Insertion

InsertBefore 在 一 个 给 定 位 置 之 前 插 入 一 个 新 元 素

InsertAfter 在 一 个 给 定 位 置 之 后 插 入 一 个 新 元 素

Searchin g Find 获 取 由 字 符 串 值 指 定 的 元 素 的 位 置

FindIndex 获 取 由 一 个 从 零 开 始 的 索 引 指 定 的 元 素 的 位 置

Status

GetCount 返 回 此 列 表 中 的 元 素 个 数

IsEmpty 测 试 列 表 是 否 为 空 ( 没 有 元 素 )