C++是 标 准 化 的 计 算 机 语 言 , 不 属 于 任 何 人 , 而 属 于 一 个 标 准 委 员 会 。STL 是 支 持 数 据 结 构 和 算 法 的 C++扩 展 。 ATL 是 微 软 拥 有 和 维 护 的 模 板 库 , 使 得COM 编 程 更 容 易 。 综 合 这 些 技 术 形 成 了 创 建 COM 组 件 的 一 种 有 效 方 法 , 这 些 COM组 件 用 于 ASP 页 面 。 下 面 用 所 有 这 些 技 术 创 建 一 个 COM 对 象 , 你 将 看 到 VC++ 6.0 的 向 导 如何 提 供 大 量 代 码 , 因 此 , 可 以 把 注 意 力 集 中 在 解 决 问 题 上 , 而 不 是 担 心 具 体 的 编程 细 节 。 17.3.1 问 题 表 现 数 据 的 最 普 通 方 法 是 表 , 列 代 表 字 段 的 类 型 , 每 一 行 是 一 条 记 录 ,拥 有 字 段 的 值 。 在 文 本 文 件 中 , 表 通 常 由 用 逗号分开的 值 (comma-separated values, CSV)组 成 。 我们将 要创 建 的 COM 组 件 以 CSV 数 据 作为输入, 高效 地存储它, 并提 供访问 函数 去检索它。这 些 数 据 在 COM 组 件 中 以 STL 数 据 结 构 表 示。在 以 后部分中 ,我们会 看 到 怎样用 STL 算 法 去处理这 些 数 据 。 另外, 在 下 一 章, 将 介绍怎样在 数据 库 中 存储存这 些 数 据 。 为了 便于 说明, 假设数 据 在 一 个 稀疏表 中 。 第一 行 的 字 段 是 列 标 题 , 接下 来的 是 一 条 条 数 据 记 录 , 记 录 的 每 个 字 段 对 齐于 列 标 题 。 逗号隔离字 段 , 换行符(/n)隔离行 , 空的 字 段 用 两个 逗号表 示, 即“, , ”。 表 17-1 是 一 个 展 开的 表 的 例子。 导 出时, 逗号会 隔离每 一 个 字 段 。 17.3.2 设计 这个组件的设计目的是使数据的存储空间和访问时间最小。由于数据有可能是稀疏的,即许多字段是空的,这就有可能使数据的存储空间最小化。可以通过数值(基于零的索引)访问数据的行,可以通过字段名访问数据的列。例如,要得到表 17-1 中 Keith Moon 的Instrument,可以调用 GetField (1,"Instrument")。 完成...