《C++面试题目.pdf》由会员分享,可在线阅读,更多相关《C++面试题目.pdf(97页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1.面 向 对 象 的 程 序 设 计 思 想 是 什 么?答:把 数 据 结 构 和 对 数 据 结 构 进 行 操 作 的 方 法 封 装 形 成 一 个 个 的 对 象。2 什 么 是 类?室 把 一 些 具 有 共 性 的 对 象 归 类 后 形 成 一 个 集 合,也 就 是 所 谓 的 类。3.对 象 都 具 有 的 二 方 面 特 征 是 什 么?分 别 是 什 么 含 义?答:对 象 都 具 有 的 特 征 是:静 态 特 征 和 动 态 特 征。静 态 特 征 是 指 能 描 述 对 象 的 些 属 性,动 态 特 征 是 指 对 象 表 现 出 来 的 行 为 4.在 头
2、文 件 中 进 行 类 的 声 明,在 对 应 的 实 现 文 件 中 进 行 类 的 定 义 有 什 么 意 义?答:这 样 可 以 提 高 编 译 效 率,因 为 分 开 的 话 只 需 要 编 译 一 次 生 成 对 应 的.o b j文 件 后,再 次 应 用 该 类 的 地 方,这 个 类 就 不 会 被 再 次 编 译,从 而 大 大 提 高 了 效 率。5.在 类 的 内 部 定 义 成 员 函 数 的 函 数 体,这 种 函 数 会 具 备 那 种 属 性?答:这 种 函 数 会 自 动 为 内 联 函 数,这 种 函 数 在 函 数 调 用 的 地 方 在 编 译 阶 段 都
3、 会 进 行 代 码 替 换。6.成 员 函 数 通 过 什 么 来 区 分 不 同 对 象 的 成 员 数 据?为 什 么 它 能 够 区 分?答:通 过 t h i s指 针 来 区 分 的,因 为 它 指 向 的 是 对 象 的 首 地 址。7.C+编 译 器 自 动 为 类 产 生 的 四 个 缺 省 函 数 是 什 么?答:默 认 构 造 函 数,拷 贝 构 造 函 数,析 构 函 数,赋 值 函 数。8.拷 贝 构 造 函 数 在 哪 几 种 情 况 下 会 被 调 用?答.i.年 类 的 一 个 对 象 去 初 始 化 该 类 的 另 一 个 对 象 时:2.如 果 函 数 的
4、形 参 是 类 的 对 象,调 用 函 数 进 行 形 参 和 实 参 结 合 时;3.如 果 函 数 的 返 回 值 是 类 对 象,函 数 调 用 完 成 返 回 时。9.构 造 函 数 与 普 通 函 数 相 比 在 形 式 上 有 什 么 不 同?(构 造 函 数 的 作 用,它 的 声 明 形 式 来 分 析)答:构 造 函 数 是 类 的 一 种 特 殊 成 员 函 数,一 般 情 况 下,它 是 专 门 用 来 初 始 化 对 象 成 员 变 量 的。构 造 函 数 的 名 字 必 须 与 类 名 相 同,它 不 具 有 任 何 类 型,不 返 回 任 何 值。10.什 么 时
5、候 必 须 重 写 拷 贝 构 造 函 数?答:当 构 造 函 数 涉 及 到 动 态 存 储 分 配 空 间 时,要 自 己 写 拷 贝 构 造 函 数,并 且 要 深 拷 贝。11.构 造 函 数 的 调 用 顺 序 是 什 么?答:1.先 调 用 基 类 构 造 函 数 2.按 声 明 顺 序 初 始 化 数 据 成 员 3.最 后 调 用 自 己 的 构 造 函 数。12.咖 儿 种 情 况 必 须 用 到 初 始 化 成 员 列 表?答:类 的 成 员 是 常 量 成 员 初 始 化;类 的 成 员 是 对 象 成 员 初 始 化,而 该 对 象 没 有 无 参 构 造 函 数。类
6、的 成 员 为 引 用 时。13 什 么 是 常 对 象?答;常 病 象 是 指 在 在 何 场 合 都 不 能 对 其 成 员 的 值 进 行 修 改 的 对 象。14.静 态 函 数 存 在 的 意 义?答:静 态 私 有 成 员 在 类 外 不 能 被 访 问,可 通 过 类 的 静 态 成 员 函 数 来 访 问;当 类 的 构 造 函 数 是 私 有 的 时,不 像 普 通 类 那 样 实 例 化 自 己,只 能 通 过 静 态 成 员 函 数 来 调 用 构 造 函 数。15.在 类 外 有 什 么 办 法 可 以 访 问 类 的 非 公 有 成 员?答:友 元,继 承,公 有 成
7、 员 函 数。16.什 么 叫 抽 象 类?答:不 用 来 定 义 对 象 而 只 作 为 一 种 基 本 类 型 用 作 继 承 的 类。17.运 算 符 重 载 的 意 义?答:为 了 对 用 户 自 定 义 数 据 类 型 的 数 据 的 操 作 与 内 定 义 的 数 据 类 型 的 数 据 的 操 作 形 式 一 致。18.不 允 许 重 载 的 5 个 运 算 符 是 哪 些?答.f.(成 员 指 针 访 问 运 算 符 号)2.:域 运 算 符 3.S i z e o f长 度 运 算 符 号 4.?:条 件 运 算 符 号 5.(成 员 访 问 符)19.运 算 符 重 载 的
8、 三 种 方 式?答:普 通 函 数,友 元 函 数,类 成 员 函 数。20.流 运 算 符 为 什 么 不 能 通 过 类 的 成 员 函 数 重 载?一 般 怎 么 解 决?答:因 为 通 过 类 的 成 员 函 数 重 载 必 须 是 运 算 符 的 第 个 是 自 己,而 对 流 运 算 的 重 载 要 求 第 一 个 参 数 是 流 对 象。一 般 通 过 友 元 来 解 决。21.赋 值 运 算 符 和 拷 贝 构 造 函 数 的 区 别 与 联 系?答:相 同 点:源 是 将 一 个 对 象 copy到 另 一 个 由 去。不 同 点:拷 贝 构 造 函 数 涉 及 到 要 新
9、 建 立 一 个 对 象。22.在 哪 种 情 况 下 要 调 用 该 类 的 析 构 函 数?答:对 象 生 命 周 期 结 束 时。23.对 象 间 是 怎 样 实 现 数 据 的 共 享 的?答:通 过 类 的 静 态 成 员 变 量 来 实 现 的。静 态 成 员 变 量 占 有 自 己 独 立 的 空 间 不 为 某 个 对 象 所 私 有。24.友 元 关 系 有 什 么 特 性?答:单 向 的,非 传 递 的,不 能 继 承 的。25.对 对 象 成 员 进 行 初 始 化 的 次 序 是 什 么?答:它 的 次 序 完 全 不 受 它 们 在 初 始 化 表 中 次 序 的 影
10、 响,只 有 成 员 对 象 在 类 中 声 明 的 次 序 来 决 定 的。26.类 和 对 象 之 间 的 关 系 是 什 么?答:类 是 对 象 的 抽 象,对 象 是 类 的 实 例。27.对 类 的 成 员 的 访 问 属 性 有 什 么?答:public,protected,private。28.const char*p,char*const p;的 区 别 如 果 const位 于 星 号 的 左 侧,则 const就 是 用 来 修 饰 指 针 所 指 向 的 变 量,即 指 针 指 向 为 常 量;如 果 const位 于 星 号 的 右 侧,const就 是 修 饰 指 针
11、 本 身,即 指 针 本 身 是 常 量。29.是 不 是 个 父 类 写 了 一 个 virtual函 数,如 果 子 类 覆 盖 它 的 函 数 不 加 virtual,也 能 实 现 多 态?virtual修 饰 符 会 被 隐 形 继 承 的。virtual可 加 可 不 加,子 类 覆 盖 它 的 函 数 不 加 virtual,也 能 实 现 多 态。30.函 数 重 载 是 什 么 意 思?它 与 虚 函 数 的 概 念 有 什 么 区 别?函 数 重 载 是 个 同 名 函 数 完 成 不 同 的 功 能,编 译 系 统 在 编 译 阶 段 通 过 函 数 参 数 个 数、参
12、数 类 型 不 同,函 数 的 返 回 值 来 区 分 该 调 用 哪 一 个 函 数,即 实 现 的 是 静 态 的 多 态 性。但 是 记 住:不 能 仅 仅 通 过 函 数 返 回 值 不 同 来 实 现 函 数 重 载。而 虚 函 数 实 现 的 是 在 基 类 中 通 过 使 用 关 键 字 virtual来 申 明 一 个 函 数 为 虚 函 数,含 义 就 是 该 函 数 的 功 能 可 能 在 将 来 的 派 生 类 中 定 义 或 者 在 基 类 的 基 础 之 上 进 行 扩 展,系 统 只 能 在 运 行 阶 段 才 能 动 态 决 定 该 调 用 哪 一 个 函 数,所
13、 以 实 现 的 是 动 态 的 多 态 性。它 体 现 的 是 一 个 纵 向 的 概 念,也 即 在 基 类 和 派 生 类 间 实 现。31.构 造 函 数 和 析 构 函 数 是 否 可 以 被 重 载,为 什 么?答:构 造 函 数 可 以 被 重 载,析 构 函 数 不 可 以 被 重 载。因 为 构 造 函 数 可 以 有 多 个 且 可 以 带 参 数,而 析 构 函 数 只 能 有 一 个,且 不 能 带 参 数。32.如 何 定 义 和 实 现 个 类 的 成 员 函 数 为 回 调 函 数?答.所 i胃 的 回 调 函 数,就 是 预 先 在 系 统 的 对 函 数 进
14、行 注 册,让 系 统 知 道 这 个 函 数 的 存 在,以 后,当 某 个 事 件 发 生 时,再 调 用 这 个 函 数 对 事 件 进 行 响 应。定 义 一 个 类 的 成 员 函 数 时 在 该 函 数 前 加 CALLBACK即 将 其 定 义 为 回 调 函 数,函 数 的 实 现 和 普 通 成 员 函 数 没 有 区 别 33.虚 函 数 是 怎 么 实 现 的?答:简 单 说 来 使 用 了 虚 函 数 表.34.抽 象 类 不 会 产 生 实 例,所 以 不 需 要 有 构 造 函 数。错 35.从 个 模 板 类 可 以 派 生 新 的 模 板 类,也 可 以 派 生
15、 非 模 板 类。对 36.main函 数 执 行 以 前,还 会 执 行 什 么 代 码?答 案:全 局 对 象 的 构 造 函 数 会 在 main函 数 之 前 执 行。37.当 一 个 类 A 中 没 有 生 命 任 何 成 员 变 量 与 成 员 函 数,这 时 sizeof(A)的 值 是 多 少,如 果 不 是 零,请 解 释 一 下 编 译 器 为 什 么 没 有 让 它 为 零。(Autodesk)答 案:肯 定 不 是 零。举 个 反 例,如 果 是 零 的 话,声 明 一 个 class A10对 象 数 组,而 每 一 个 对 象 占 用 的 空 间 是 零,这 时 就
16、 没 办 法 区 分 A0,Al了。38.delete 与 delete 区 别:delete只 会 i商 用 一 次 析 初 函 数,而 delete会 调 用 每 一 个 成 员 的 析 构 函 数。199.子 类 析 构 时 要 调 用 父 类 的 析 构 函 数 吗?会 调 用,析 构 函 数 调 用 的 次 序 是 先 派 生 类 的 析 构 后 基 类 的 析 构,也 就 是 说 在 基 类 的 的 析 构 调 用 的 时 候,派 生 类 的 信 息 已 经 全 部 销 毁 了 40.继 承 优 缺 点。1、类 继 承 是 在 编 译 时 刻 静 态 定 义 的,且 可 直 接 使
17、 用,2、类 继 承 可 以 较 方 便 地 改 变 父 类 的 实 现。缺 占.1、茵 为 继 承 在 编 译 时 刻 就 定 义 了,所 以 无 法 在 运 行 时 刻 改 变 从 父 类 继 承 的 实 现 2、父 类 通 常 至 少 定 义 了 子 类 的 部 分 行 为,父 类 的 任 何 改 变 都 可 能 影 响 子 类 的 行 为 3、如 果 继 承 下 来 的 实 现 不 适 合 解 决 新 的 问 题,则 父 类 必 须 重 写 或 被 其 他 更 适 合 的 类 替 换。这 种 依 赖 关 系 限 制 了 灵 活 性 并 最 终 限 制 了 复 用 性。41.解 释 堆
18、和 栈 的 区 别。栈 区(stack)-由 编 译 器 自 动 分 配 释 放,存 放 函 数 的 参 数 值,局 部 变 量 的 值 等。堆:一 般 由 程 序 员 分 配 释 放,若 程 序 员 不 释 放,程 序 结 束 时 可 能 由 OS回 收。42.一 个 类 的 构 造 函 数 和 析 构 函 数 什 么 时 候 被 调 用,是 否 需 要 手 工 调 用?答:构 造 函 数 在 创 建 类 对 象 的 时 候 被 自 动 调 用,析 构 函 数 在 类 对 象 生 命 期 结 束 时,由 系 统 自 动 调 用。43.何 时 需 要 预 编 译:总 是 使 用 不 经 常 改
19、 动 的 大 型 代 码 体。程 序 由 多 个 模 块 组 成,所 有 模 块 都 使 用 组 标 准 的 包 含 文 件 和 相 同 的 编 译 选 项。在 这 种 情 况 下,可 以 将 所 有 包 含 文 件 预 编 译 为 个 预 编 译 头。44.多 态 的 作 用?主 要 是 两 个:1.隐 藏 实 现 细 节,使 得 代 码 能 够 模 块 化;扩 展 代 码 模 块,实 现 代 码 重 用;2.接 口 重 用:为 了 类 在 继 承 和 派 生 的 时 候,保 证 使 用 家 族 中 任 类 的 实 例 的 某 一 属 性 时 的 正 确 调 用 45.虚 拟 函 数 与 普
20、 通 成 员 函 数 的 区 别?内 联 函 数 和 构 造 函 数 能 否 为 虚 拟 函 数?答 案:区 别:虚 拟 函 数 有 virtual关 键 字,有 虚 拟 指 针 和 虚 函 数 表,虚 拟 指 针 就 是 虚 拟 函 数 的 接 口,而 普 通 成 员 函 数 没 有。内 联 函 数 和 构 造 函 数 不 能 为 虚 拟 函 数。46.构 造 函 数 和 析 构 函 数 的 调 用 顺 序?析 构 函 数 为 什 么 要 虚 拟?答 案:构 造 函 数 的 调 用 顺 序:基 类 构 造 函 数 一 对 象 成 员 构 造 函 数 一 派 生 类 构 造 函 数;析 构 函
21、 数 的 调 用 顺 序 与 构 造 函 数 相 反。析 构 函 数 虚 拟 是 为 了 防 止 析 构 不 彻 底,造 成 内 存 的 泄 漏。47.C+中 类 型 为 private的 成 员 变 量 可 以 由 哪 些 函 数 访 问?只 可 以 由 本 类 中 的 成 员 函 数 和 友 员 函 数 访 问 48.请 说 由 类 中 private,protect,public三 种 访 问 限 制 类 型 的 区 别 private是 私 有 类 型,只 有 本 类 中 的 成 员 函 数 访 问;protect是 保 护 型 的,本 类 和 继 承 类 可 以 访 问;public
22、是 公 有 类 型,任 何 类 都 可 以 访 问.49.类 中 成 员 变 量 怎 么 进 行 初 始 化?uj以 通 过 构 造 函 数 的 初 始 化 列 表 或 构 造 函 数 的 函 数 体 实 现。50.在 什 么 时 候 需 要 使 用“常 引 用”?如 果 既 要 利 用 引 用 提 高 程 序 的 效 率,又 要 保 护 传 递 给 函 数 的 数 据 不 在 函 数 中 被 改 变,就 应 使 用 常 弓 i用 51.引 用 身 指 针 有 什 么 区 别?答、1)引 用 必 须 被 初 始 化,指 针 不 必。2)引 用 初 始 化 以 后 不 能 被 改 变,指 针 可
23、 以 改 变 所 指 的 对 象。3)不 存 在 指 向 空 值 的 引 用,但 是 存 在 指 向 空 值 的 指 针。52.描 述 实 时 系 统 的 基 本 特 性 53.答、在 特 定 时 间 内 完 成 特 定 的 任 务,实 时 性 与 可 靠 性。54.全 局 变 量 和 局 部 变 量 在 内 存 中 是 否 有 区 别?如 果 有,是 什 么 区 别?答、全 局 变 量 储 存 在 静 态 数 据 区,局 部 变 量 在 堆 栈 中。55.堆 栈 溢 出 一 般 是 由 什 么 原 因 导 致 的?答、没 有 回 收 垃 圾 资 源 56.什 么 函 数 不 能 声 明 为
24、虚 函 数?答 构 造 函 数(constructor)57.IP地 址 的 编 码 分 为 哪 俩 部 分?答 IP地 址 由 两 部 分 组 成,网 络 号 和 主 机 号。58.不 能 做 switch。的 参 数 类 型 是:答、switch的 参 数 不 能 为 实 型。59.如 何 引 用 一 个 已 经 定 义 过 的 全 局 变 量?答、可 以 用 引 用 头 文 件 的 方 式,也 可 以 用 extern关 键 字,如 果 用 引 用 头 文 件 方 式 来 引 用 某 个 在 头 文 件 中 声 明 的 全 局 变 理,假 定 你 将 那 个 变 写 错 了,那 么 在
25、编 译 期 间 会 报 错,如 果 你 用 extern方 式 引 用 时,假 定 你 犯 了 同 样 的 错 误,那 么 在 编 译 期 间 不 会 报 错,而 在 连 接 期 间 报 错 60.对 于 一 个 频 繁 使 用 的 短 小 函 数,在 C 语 言 中 应 用 什 么 实 现,在 C+中 应 用 什 么 实 现?答、c 用 宏 定 义,C+用 inlineNm61.C+是 不 是 类 型 安 全 的?答 案:不 是。两 个 不 同 类 型 的 指 针 之 间 可 以 强 制 转 换(用 reinterpret cast)62.当 一 个 类 A 中 没 有 生 命 任 何 成
26、员 变 量 与 成 员 函 数,这 时 sizeof(A)的 值 是 多 少,请 解 释 一 下 编 译 器 为 什 么 没 有 让 它 为 零。答 案:为 1。举 个 反 例,如 果 是 零 的 话,声 明 一 个 class A10对 象 数 组,而 每 一 个 对 象 占 用 的 空 间 是 零,这 时 就 没 办 法 区 分 了。63.简 述 数 组 与 指 针 的 区 别?数 组 要 么 在 静 态 存 储 区 被 创 建(如 全 局 数 组),要 么 在 栈 上 被 创 建。指 针 可 以 随 时 指 向 任 意 类 型 的 内 存 块。(1)修 改 内 容 上 的 区 别char
27、 a=hello;a0=X;char*p=world;注 意 p 指 向 常 量 字 符 串 p0=X;/编 译 器 不 能 发 现 该 错 误,运 行 时 错 误(2)用 运 算 符 sizeof可 以 计 算 出 数 组 的 容 量(字 节 数)。sizeof(p),p为 指 针 得 到 的 是 一 个 指 针 变 量 的 字 节 数,而 不 是 p 所 指 的 内 存 容 量。64.C+函 数 中 值 的 传 递 方 式 有 三 种 方 式:值 传 递、指 针 传 递、引 用 传 递 65.内 存 的 分 配 方 式 分 配 方 式 有 三 种,1、静 态 存 储 区,是 在 程 序 编
28、 译 时 就 已 经 分 配 好 的,在 整 个 运 行 期 间 都 存 在,如 全 局 变 量、常 量。2、一 标 上 分 配,函 数 内 的 局 部 变 量 就 是 从 这 分 配 的,但 分 配 的 内 存 容 易 有 限。3、堆 上 分 配,也 祢 动 态 分 配,如 我 和 再 new,malloc分 配 内 存,用 delete,free来 释 放 的 内 存。66.extern C”有 什 么 作 用?Extern“C”是 由 C+提 供 的 一 个 连 接 交 换 指 定 符 号,用 于 告 诉 C+这 段 代 码 是 C 函 数。这 是 因 为 C+编 译 后 库 中 函 数
29、 名 会 变 得 很 长,与 C 生 成 的 不 一 致,造 成 C+不 能 直 接 调 用 C 函 数,加 上 extren“c”后,C+就 能 直 接 调 用 C 函 数 了。Extern C”主 要 使 用 正 规 DLL函 数 的 引 用 和 导 出 和 在 C+包 含 C 函 数 或 C 头 文 件 时 使 用。使 用 时 在 前 面 加 上 extern“c”关 键 字 即 可。67.用 什 么 函 数 开 启 新 进 程、线 程。答 案:线 程:CreateThread/AfxBeginThread 等 进*呈:CreateProcess 等 68.SendMessage 和 P
30、ostMessage 有 什 么 区 别 答 案:SendMessage是 阻 塞 的,等 消 息 被 处 理 后,代 码 才 能 走 到 SendMessage的 下 一 行。PostMessage是 非 阻 塞 的,木 管 消 点、是 否 白 被 处 理,代 碣 鸟 上 走 到 PostMessage的 下 一 行。69.CMemoryState主 要 功 能 是 什 么 答 案:查 看 内 存 使 用 情 况,解 决 内 存 泄 露 问 题。70.26、#include 和#include filename/”有 什 么 区 别?答:对 于#include,编 译 器 从 标 准 库 路
31、 径 开 始 搜 索 filename.h对 于#include filename,h”,编 译 器 从 用 户 的 工 作 路 径 并 始 搜 索 filename.h71.处 理 器 标 识#error的 目 的 是 什 么?答:编 译 时 输 出 一 条 错 误 信 息,并 中 止 继 续 编 译。72.#if!defined(AFX HADE H)#define(AFX_-J!ADEJI)#endif 作 用?防 止 该 头 文 件 被 重 复 引 用。73.在 定 义 个 宏 的 时 候 要 注 意 什 么?定 义 部 分 的 每 个 形 参 和 整 个 表 达 式 都 必 须 用
32、括 号 括 起 来,以 避 免 不 可 预 料 的 错 误 发 生 74.数 组 在 做 函 数 实 参 的 时 候 会 转 变 为 什 么 类 型?数 组 在 做 实 参 时 会 变 成 指 针 类 型。75.系 统 会 自 动 打 开 和 关 闭 的 3 个 标 准 的 文 件 是?(1)标 准 输 入-键 盘-stdin(2)标 准 输 出-显 本 器-stdout(3)标 海 由 错 输 出-显 示 器 stderr76.在 Win32 卞 char,int,float,double 各 占 多 少 位?Char 占 用 8 位(2)Int占 用 32位(3)Float 占 用 32
33、位(4)Double 占 用 64 位 77.strcpy()和 memcpyO 的 区 别?strcpy()知 memcpy()温 可 以 用 来 拷 贝 字 符 串,strcpyO拷 贝 以 0结 束,但 memcpyO必 须 指 定 拷 贝 的 长 度。78.说 明 define和 const在 语 法 和 含 义 上 有 什 么 不 同?(1)#define是 C 语 法 中 定 义 符 号 变 量 的 方 法,符 号 常 量 只 是 用 来 表 达 一 个 值,在 编 译 阶 段 符 号 就 被 值 替 换 了,它 没 有 类 型;(2)Const是 C+语 法 中 定 义 常 变
34、量 的 方 法,常 变 量 具 有 变 量 特 性,它 具 有 类 型,内 存 中 存 在 以 它 命 名 的 存 储 单 元,可 以 用 sizeof测 出 长 度。79.说 出 字 符 常 量 和 字 符 串 常 量 的 区 别,并 使 用 运 算 符 sizeof计 算 有 什 么 不 用?字 符 常 量 是 指 单 个 字 符,字 符 串 常 量 以 0结 束,使 用 运 算 符 Sizeof计 算 多 占 一 字 节 的 存 储 空 间。80.简 述 全 局 变 量 的 优 缺 点?全 局 变 量 也 称 为 外 部 变 量,它 是 在 函 数 外 部 定 义 的 变 量,它 属 于
35、 一 个 源 程 序 文 件,它 保 存 上 一 次 被 修 改 后 的 值,便 于 数 据 共 享,但 不 方 便 管 理,易 引 起 意 想 不 到 的 错 误。81.总 结 static的 应 用 和 作 用?(1)函 数 体 内 static变 量 的 作 用 范 围 为 该 函 数 体,不 同 于 auto变 量,该 变 量 的 内 存 只 被 分 配 一 次,因 此 其 值 在 下 次 调 用 时 仍 维 持 上 次 的 值;(2)在 模 块 内 的 static全 局 变 量 可 以 被 模 块 内 所 用 函 数 访 问,但 不 能 被 模 块 外 其 它 函 数 访 问;(3
36、)在 模 块 内 的 static函 数 只 可 被 这 一 模 块 内 的 其 它 函 数 调 用,这 个 函 数 的 使 用 范 围 被 限 制 在 声 明 它 的 模 块 内;(4)在 类 中 的 static成 员 变 量 属 于 整 个 类 所 拥 有,对 类 的 所 有 对 象 只 有 一 份 拷 贝;(5)在 类 中 的 static成 员 函 数 属 于 整 个 类 所 拥 有,这 个 函 数 不 接 收 this指 针,因 而 只 能 访 问 类 的 static成 员 变 量。82.总 结 const的 应 用 和 作 用?(1)欲 阻 止 一 个 变 量 被 改 变,可
37、以 使 用 const关 键 字。在 定 义 该 const变 量 时,通 常 需 要 对 它 进 行 初 始 化,因 为 以 后 就 没 有 机 会 再 去 改 变 它 了:(2)对 指 针 来 说,可 以 指 定 指 针 本 身 为 const,也 可 以 指 定 指 针 所 指 的 数 据 为 const,或 二 者 同 时 指 定 为 const;(3)在 一 个 函 数 声 明 中,const可 以 修 饰 形 参,表 明 它 是 一 个 输 入 参 数,在 函 数 内 部 不 能 改 变 其 值.(4)舁 羊 类 的 成 员 函 数,若 指 定 其 为 const类 型,则 表 明
38、 其 是 一 个 常 函 数,不 能 修 改 类 的 成 员 变 量;(5)对 于 类 的 成 员 函 数,有 时 候 必 须 指 定 其 返 回 值 为 const类 型,以 使 得 其 返 回 值 不 为“左 值“。83 什 么 是 指 针?谈 谈 你 对 指 针 的 理 解?指 针 是 个 变 量,该 变 量 专 门 存 放 内 存 地 址;指 针 变 量 的 类 型 取 决 于 其 指 向 的 数 据 类 型,在 所 指 数 据 类 型 前 加*指 针 变 量 的 特 点 是 它 可 以 访 问 所 指 向 的 内 存。84.什 么 是 常 指 针,什 么 是 指 向 常 变 量 的
39、指 针?常 指 针 的 含 义 是 该 指 针 所 指 向 的 地 址 不 能 变,但 该 地 址 所 指 向 的 内 容 可 以 变 化,使 用 常 指 针 可 以 保 证 我 们 的 指 针 不 能 指 向 其 它 的 变 量,指 向 常 变 量 的 指 针 是 指 该 指 针 的 变 量 本 身 的 地 址 可 以 变 化,可 以 指 向 其 它 的 变 量,但 是 它 所 指 的 内 容 不 可 以 被 修 改。指 向 长 变 量 的 指 针 定 义,85.函 数 指 针 和 指 针 函 数 的 区 别?函 数 指 针 是 指 指 向 一 个 函 数 入 口 的 指 针;指 针 函 数
40、 是 指 函 数 的 返 回 值 是 一 个 指 针 类 型。87.简 述 Debug版 本 和 Release版 本 的 区 别?Debug版 本 是 调 试 版 本,Release版 本 是 发 布 给 用 户 的 最 终 非 调 试 的 版 本,88.指 针 的 儿 种 典 型 应 用 情 况?int*pn;-指 针 数 组,每 个 元 素 均 为 指 向 整 型 数 据 的 指 针。int(*)pn;-p%指 向 一 维 数 组,而 指 针,这 个 一 维 教 组 看 n 个 整 型 数 据。int*p();-函 数 带 回 指 针,指 针 指 向 返 回 的 值。int(*)p();
41、-p 为 指 向 窗 数 的 指 针。89.static函 数 与 普 通 函 数 有 什 么 区 别?static函 数 在 内 存 中 只 有 一 份,普 通 函 数 在 每 个 被 调 用 中 维 持 一 份 拷 贝 90.struct(结 构)和 union(联 合)的 区 别?1.结 构 和 联 合 都 是 由 多 个 不 同 的 数 据 类 型 成 员 组 成,但 在 任 何 同 一 时 刻,联 合 中 只 存 放 了 一 个 被 选 中 的 成 员(所 有 成 员 共 用 一 块 地 址 空 间),而 结 构 的 所 有 成 员 都 存 在(不 同 成 员 的 存 放 地 址 不
42、 同)。2.对 于 联 合 的 不 同 成 员 赋 值,将 会 对 其 它 成 员 重 写,原 来 成 员 的 值 就 不 存 在 了,而 对 于 结 构 的 不 同 成 员 赋 值 是 互 不 影 响 的。91.class 和 struct 的 区 别?struct的 成 员 默 认 是 公 有 的,而 类 的 成 员 默 认 是 私 有 的。92.简 述 枚 举 类 型?枚 举 方 便 一 次 定 义 一 组 常 量,使 用 起 来 很 方 便;93.assert。的 作 用?ASSERT()是 一 个 调 试 程 序 时 经 常 使 用 的 宏,在 程 序 运 行 时 它 计 算 括 号
43、 内 的 表 达 式,如 果 表 达 式 为 FALSE(0),程 序 将 报 告 错 误,并 终 止 执 行。如 果 表 达 式 不 为 0,则 继 续 执 行 后 面 的 语 句。这 个 宏 通 常 原 来 判 断 程 序 中 是 否 出 现 了 明 显 非 法 的 数 据,如 果 出 现 了 终 止 程 序 以 免 导 致 严 重 后 果,同 时 也 便 于 查 找 错 误。94.局 部 变 量 和 全 局 变 量 是 否 可 以 同 名?能,局 部 会 屏 蔽 全 局。要 用 全 局 变 量,需 要 使 用“:”(域 运 算 符)。95.程 序 的 局 部 变 量 存 在 于(堆 栈)
44、中,全 局 变 量 存 在 于(静 态 区)中,动 态 申 请 数 据 存 在 于(堆)中。96.在 什 么 时 候 使 用 常 引 用?如 果 既 要 利 用 引 用 提 高 程 序 的 效 率,又 要 保 护 传 递 给 函 数 的 数 据 不 在 函 数 中 被 改 变,就 应 使 用 常 弓 i用。97.类 的 尚 明 和 实 现 的 分 开 的 好 处?1.起 保 护 作 用;2.提 高 编 译 的 效 率。98.windows消 息 系 统 由 哪 几 部 分 构 成?由 一 下 3 部 分 组 成:1.消 息 队 列:操 作 系 统 负 责 为 进 程 维 护 一 个 消 息 队
45、 列,程 序 运 行 时 不 断 从 该 消 息 队 列 中 获 取 消 息、处 理 消 息;2.消 息 循 环:应 用 程 序 通 过 消 息 循 环 不 断 获 取 消 息、处 理 消 息。3.消 息 处 理:消 息 循 环 负 责 将 消 息 派 发 到 相 关 的 窗 口 上 使 用 关 联 的 窗 口 过 程 函 数 进 行 处 理。99 什 么 是 消 息 映 射。消:息 映 射 就 是 支 程 序 员 指 定 MFC类(有 消 息 处 理 能 力 的 类)处 理 某 个 消 息。然 后 由 程 序 员 完 成 对 该 处 理 函 数 的 编 写,以 实 现 消 息 处 理 功 能
46、。100.什 么 是 UDP和 TCP的 区 别 是 什 么?TCP的 全 称 为 传 输 控 制 协 议。这 种 协 议 可 以 提 供 面 向 连 接 的、可 靠 的、点 到 点 的 通 信。UDP全 称 为 用 户 报 文 协 议,它 可 以 提 供 非 连 接 的 不 可 靠 的 点 到 多 点 的 通 信。用 TCP还 是 UD P,那 要 看 你 的 程 序 注 重 哪 一 个 方 面?可 靠 还 是 快 速?101.w insock建 立 连 接 的 主 要 实 现 步 骤?答:服 务 器 端:socket()建 立 套 接 字,绑 比(b i n d)并 监 听(l i s t
47、 e n),用 accept()等 待 客 户 端 连 接,accept()发 现 有 客 户 端 连 接,建 立 一 个 新 的 套 接 字,自 身 重 新 开 始 等 待 连 接。该 新 产 生 的 套 接 字 使 用 send。和 recv()写 读 数 据,直 至 数 据 交 换 完 毕,closesocket()关 闭 套 接 字。6 也 各 有 特 点 请 问 是 在 客 户 端:so c k et。建 立 套 接 字,连 接(c o n n e c t)服 务 器,连 接 上 后 使 用 send。和 recv(),在 套 接 字 上 写 读 数 据,立 至 数 据 交 换 完
48、毕,c lo se so c k e t()关 闭 套 接 字。102.进 程 间 主 要 的 通 讯 方 式?信 号 量,管 道,消 息,共 享 内 存 103.构 成 Win32 A p i函 数 的 三 个 动 态 链 接 库 是 什 么?答:内 核 库,用 户 界 面 管 理 库,图 形 设 备 界 面 库。104.创 建 一 个 窗 口 的 步 骤 是?答:填 充 一 个 窗 口 类 结 构-注 册 这 个 窗 口 类-然 后 再 创 建 窗 口-显 示 窗 口-更 新 窗 口。105.模 态 对 话 框 和 非 模 态 对 话 框 有 什 么 区 别?答:1.调 用 规 则 不 同
49、:前 者 是 用 I DoModal()调 加,后 者 通 过 属 性 和 ShcwWindowO来 显 示。2.模 态 对 话 框 在 没 有 关 闭 前 用 户 不 能 进 行 其 他 操 作,而 非 模 态 对 话 框 可 以。3.非 模 态 对 话 框 创 建 时 必 须 编 写 自 己 的 共 有 构 造 函 数,还 要 调 用 C re a te。函 数。106.从 EDIT框 中 取 出 数 据 给 关 联 的 变 量,已 经 把 关 联 的 变 量 的 数 据 显 示 在 EDIT框 上 的 函 数 是 什 么?答:UpdateData(TRUE),Updatedata(FAL
50、SE).107.简 单 介 绍 GDI?答;G D I M Graphics Device I n t e r f a c e的 缩 写,译 为:图 形 设 备 接 口;是 一 个 在 Windows应 用 程 序 中 执 行 与 设 备 无 关 的 函 数 库,这 些 函 数 在 不 同 的 输 出 设 备 上 产 生 图 形 以 及 文 字 输 出 O108.windows消 息 分 为 几 类?并 对 各 类 做 简 单 描 述。1.窗 口 消 息:与 窗 口 相 关 的 消 息,除 W M/O M M A N D之 外 的 所 有 以 W M _开 头 的 消 息;2.命 令 消 息;