《深入浅出MFC》2/e过这是个甜蜜的负担。 你们常常感谢我带给你们帮助。你们一定不知道,没有你们细心研读我的心血,并且热心写 信给我,我无法忍受写作的漫漫孤寂!我可以花三天的时间写一篇序,也可以花一个上午设 计一张图。是的,我愿意!我对拥有一群可爱可敬的读者感到骄傲。 12 目 錄 13 目錄 (* 表示本版新增內容) * 讀者來函 / 1 * 第㆓版序 / 5 第㆒版序 / 7 目錄 这个版本已具备打印与预视能力,但并非「所见即所得」(What You See Is What You Get),打印结果明显缩小,这是因为映射模式采用MM_TEXT。15寸监视器的 640 个图素换到300dpi 上才不过两英寸多一点。 我们可以在这个版本中学习以AppWizard 制作骨干,并大量运用ClassWizard 为我 们增添消息处理函数;也可以学习如何设计Document,如何改写CView::OnDraw Routing。 Scribble Step3-增加「笔划宽度对话框」(第10 章):这个版本做出「画笔宽 度对话框」,使用者可以在其中设定细笔宽度和粗笔宽度。预设的细笔为两个 图素(pixel)宽,粗笔为五个图素宽。 从这个版本中可以学习如何以对话框编辑器设计对话框模板,以ClassWizard 增设对 话盒处理函数,以及如何以MFC 提供的DDX/DDV 机制做出对话框控制组件 (c0 码力 | 1009 页 | 11.08 MB | 1 年前3
Hello 算法 1.0.0b5 C++版. . . . . . . . . . . . . . . . . 184 第 9 章 图 186 9.1 图 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187 9.2 图基础操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191 9.3 图的遍历 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198 9.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 数据结构:基本数据类型,数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤、 示例题目等。 第 0 章 前言 hello‑algo.com 3 图 0‑1 Hello 算法内容结构 0.1.3 致谢 在本书的创作过程中,我得到了许多人的帮助,包括但不限于:0 码力 | 377 页 | 30.69 MB | 1 年前3
Hello 算法 1.0.0b4 C++版. . . . . . . . . . . . . . . . . . 162 9. 图 163 9.1. 图 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 9.2. 图基础操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 9.3. 图的遍历 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 9.4. 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . 复杂度分析:数据结构和算法的评价维度,算法效率的评估方法。时间复杂度、空间复杂度的推算方 法、常见类型、示例等。 ‧ 数据结构:基本数据类型,数据结构的分类方法。数组、链表、栈、队列、散列表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤、 示例题目等。 0. 前言0 码力 | 343 页 | 27.39 MB | 1 年前3
Hello 算法 1.1.0 C++ 版艺、 到解放生产力的工业产品、再到宇宙运行的科学规律,几乎每一件平凡或令人惊叹的事物背后,都隐藏着精 妙的算法思想。 同样,数据结构无处不在:大到社会网络,小到地铁线路,许多系统都可以建模为“图”;大到一个国家,小 到一个家庭,社会的主要组织形式呈现出“树”的特征;冬天的衣服就像“栈”,最先穿上的最后才能脱下; 羽毛球筒则如同“队列”,一端放入、另一端取出;字典就像一个“哈希表”,能够快速查找目标词条。 . . . . . . . . . . . . . . . . . 187 第 9 章 图 188 9.1 图 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 9.2 图的基础操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 9.3 图的遍历 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 9.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .0 码力 | 379 页 | 18.47 MB | 1 年前3
Hello 算法 1.0.0 C++版. . . . . . . . . . . . . . . . . 187 第 9 章 图 188 9.1 图 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 9.2 图的基础操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 9.3 图的遍历 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 9.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 数据结构:基本数据类型和数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤 和示例问题等。 第 0 章 前言 hello‑algo.com 3 图 0‑1 本书主要内容 0.1.3 致谢 本书在开源社区众多贡献者的共同0 码力 | 378 页 | 17.59 MB | 1 年前3
Hello 算法 1.2.0 简体中文 C++ 版艺、 到解放生产力的工业产品、再到宇宙运行的科学规律,几乎每一件平凡或令人惊叹的事物背后,都隐藏着精 妙的算法思想。 同样,数据结构无处不在:大到社会网络,小到地铁线路,许多系统都可以建模为“图”;大到一个国家,小 到一个家庭,社会的主要组织形式呈现出“树”的特征;冬天的衣服就像“栈”,最先穿上的最后才能脱下; 羽毛球筒则如同“队列”,一端放入、另一端取出;字典就像一个“哈希表”,能够快速查找目标词条。 . . . . . . . . . . . . . . . . . 187 第 9 章 图 188 9.1 图 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 9.2 图的基础操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 9.3 图的遍历 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 9.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .0 码力 | 379 页 | 18.48 MB | 10 月前3
C++高性能并行编程与优化 - 课件 - 08 CUDA 开启的 GPU 编程里的板块数和线程数可以动态指定,无需 先传回到 CPU 再进行调用,这是 CUDA 特有的能力。 常用于这种情况:需要从 GPU 端动态计算出 blockDim 和 gridDim ,而又不希望导回数据到 CPU 导致强制同步影响性能。 这种模式被称为动态并行( dynamic parallelism ), OpenGL 有一 个 glDispatchComputeIndirect 的 API 不过,这个功能同样需要开启 CUDA_SEPARABLE_COMPILATION 。 第 2 章:内存管理 如何从核函数里返回数据? • 我们试着把 kernel 的返回类型声明为 int ,试 图从 GPU 返回数据到 CPU 。 • 但发现这样做会在编译期出错,为什么? • 刚刚说了 kernel 的调用是异步的,返回的时候 ,并不会实际让 GPU 把核函数执行完毕,必须 cudaDeviceSynchronize() html#math-libraries 稍微快一些,但不完全精确的 __sinf • 两个下划线的 __sinf 是 GPU intrinstics ,精度相当于 GLSL 里的那种。 适合对精度要求不高,但有性能要求的图 形学任务。 • 类似的这样的低精度內建函数还有 __expf 、 __logf 、 __cosf 、 __powf 等。 • 还有 __fdividef(x, y) 提供更快的浮点除法 ,和一般的除法有相同的精确度,但是在0 码力 | 142 页 | 13.52 MB | 1 年前3
现代C++ 教程:高速上手C++11/14/17/20系统调用。在现代 C++ 出现之前,大部分人当谈及『C 与 C++ 的区别是什么』时, 普遍除了回答面向对象的类特性、泛型编程的模板特性外,就没有其他的看法了,甚至直接回答『差不 多』,也是大有人在。图 1.2 中的韦恩图大致上回答了 C 和 C++ 相关的兼容情况。 从现在开始,你的脑子里应该树立『C++ 不是 C 的一个超集』这个观念(而且从一开始就不是, 后面的进一步阅读的参考文献中给出了 C++98 { #endif int add(int x, int y); #ifdef __cplusplus } #endif 9 1.2 与 C 的兼容性 第 1 章迈向现代 C++ 图 1: 图 1.2: C 和 C++ 互相兼容情况 // foo.c int add(int x, int y) { return x+y; } // 1.1.cpp #include "foo C code: " << add(1, 2))](){ out.get() << ".\n"; }(); 不必担心,本书的后续章节将为你介绍这一切。 进一步阅读的参考文献 • C++ 语言导学. Bjarne Stroustrup • C++ 历史 • C++ 特性在 GCC/Clang 等编译器中的支持情况 • C++98 与 C99 之间的区别 11 第 2 章语言可用性的强化0 码力 | 83 页 | 2.42 MB | 1 年前3
Hello 算法 1.0.0b1 C++版如果你也有上述烦恼,那么很幸运这本书找到了你。本书是我对于该问题给出的答案,虽然不一定正确,但至 少代表一次积极的尝试。这本书虽然不足以让你直接拿到 Offer ,但会引导你探索数据结构与算法的“知识地 图”,带你了解不同“地雷”的形状大小和分布位置,让你掌握各种“排雷方法”。有了这些本领,相信你可以 更加得心应手地刷题与阅读文献,逐步搭建起完整的知识体系。 书内的代码配有可一键运行的源文件,托管在 . . . . . . 132 目 录 hello‑algo.com ii 9. 图 134 9.1. 图 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 9.2. 图基础操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 9.3. 图的遍历 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 9.4. 小结 . . . . . . . . . . . . . . . . . . . . . . . . .0 码力 | 187 页 | 14.71 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 07 深入浅出访存优化,但是 实际上还是 YX 序,和静态数组 的 a[y][x] 一样的,指标出现的顺 序并无关紧要。 …… ndarray :访问越界问题 • 在物理仿真中,常常需要访问在一个元素附近的几个元素。图 像处理中用到的模糊操作,也需要向上下左右扩散 w 个单位。 • 这样假如当前元素正好在二维网格的边界上,那再往外索引 w 个单位就会超出数组的界限,导致出错。对此有多种解决办法 : 1. 使用 记得小彭老师说过,性能优化讲究组合拳,光看一 个改动有没有提升是不科学的。 • 所以我们再尝试配合一下其他优化手段,看看有没 有效果吧。 使用预取指令 • 反而更加慢了? • 可能是因为写入了 b 污染了一级缓存,导 致预取效果不好,我们用直写指令试试看 。 使用直写指令 • 反而更加更加慢了? • 可能是因为直写的时间点过于分散了,因 为中间还夹杂着加法的运算,导致写入挂 起队列指令太长, CPU0 码力 | 147 页 | 18.88 MB | 1 年前3
共 21 条
- 1
- 2
- 3













