C++高性能并行编程与优化 - 课件 - 16 现代 CMake 模块化项目管理指南
现代 CMake 模块化项目管理指南 彭于斌( @archibate ) 课件 & 源码: https://github.com/parallel101/course 往期录播: https://space.bilibili.com/263032155 找不到头文 件怎么办呀 CMake Cookbook 小彭老师建议 : ~~-·~·~-·~ -~·-·~·- 第一章:文件 / / 目录组织规范 基于 CMake 的 C/C++ 项目,如何优雅地、模块化地组织大量源文件 ? 推荐的目录组织方式 • 目录组织格式: • 项目名 /include/ 项目名 / 模块名 .h • 项目名 /src/ 模块名 .cpp • CMakeLists.txt 中写: • target_include_directories( 项目名 PUBLIC include) • 源码文件中写: 呢?就冲突了。所以“单次有效”虽然劳驾您的高抬贵手每次命令行打一下 - DQt5_DIR=”D:/Qt5” ,但人家也打一下 -DQt5_DIR=”E:/Qt5” ,就没有冲突,各美其美,美美与 共,赋能多元化社会,下沉团队合作发力面。 • 实际上只要你不删 build ,不需要每次都 -DQt5_DIR 一下, CMake 具有“记忆”功能。 • cmake -B build -DQt5_DIR=D:/Qt50 码力 | 56 页 | 6.87 MB | 1 年前3《深入浅出MFC》2/e
买繁体版之管道。一来我不知道是否台湾出版公司有提供海外邮购或电购,二 来即使有,想必带给大家很大的麻烦,三来两岸消费水平之差异带给大陆读者 的负担,亦令我深感不安。 1. 这个文档是从侯捷网站提供的繁体板简体化过来的。 2. 由于排版问题,有些繁体说法在换行时候没有被替换,所以遇到问题大家可以对照原文比较一下。 3. 附录、无责任书评那个文件没有转(估计看到那个地方的时候,你手里也该有一本纸板的了)。 用词遣字的意境。新竹刘嘉均先生和加拿大陈宗泰先生给我非常宝贵的技术上的意见。陈先 生甚至在一个月内来了五封航空信。 这些,怎不教我心怀感谢,并且更加戒慎恐惧! 感谢所有读者促成这本书的更精致化。Visual C++ 5.0 面世了,MFC 则停留在4.2,程序设计 的主轴没有什么大改变。对于新读者,本书乃全新产品自不待言,您可以从目录中细细琢磨 所有的主题。对于老读者,本书所带给您的, 整合环境。工具的使用虽然谈不上学问,但在可视化 软件开发过程中扮演极重角色,切莫小觑它。 第三篇介绍application framework 的观念,以及MFC 骨干程序。所谓骨干程序,是指Visual C++ 的工具AppWizard 所产生出来的程序代码。当然,AppWizard 会根据你的选项做出不同 的程序代码,我所据以解说的,是大众化选项下的产品。 第四篇以微软公司附于Visual0 码力 | 1009 页 | 11.08 MB | 1 年前3Hello 算法 1.2.0 繁体中文 C++ 版
——鄧俊輝,清華大學計算機系教授 “如果我當年學資料結構與演算法時有《Hello 演算法》,學起來應該會簡單 10 倍!” ——李沐,亞馬遜資深首席科學家 電腦的出現為世界帶來了巨大的變革,它憑藉高速的運算能力與卓越的可程式化特性,成為執行演算法 與處理資料的理想媒介。無論是電玩遊戲的逼真畫面、自動駕駛的智慧決策,還是 AlphaGo 的精彩棋局、 ChatGPT 的自然互動,這些應用都是演算法在電腦上的精妙演繹。 10.3 二分搜尋邊界 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215 10.4 雜湊最佳化策略 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 10.5 重識搜尋演算法 . . . . 標題註釋,用於標註函式、類別、測試樣例等 */ // 內容註釋,用於詳解程式碼 /** * 多行 * 註釋 */ 0.2.2 在動畫圖解中高效學習 相較於文字,影片和圖片具有更高的資訊密度和結構化程度,更易於理解。在本書中,重點和難點知識將主 要透過動畫以圖解形式展示,而文字則作為解釋與補充。 如果你在閱讀本書時,發現某段內容提供瞭如圖 0‑2 所示的動畫圖解,請以圖為主、以文字為輔,綜合兩者0 码力 | 379 页 | 18.79 MB | 10 月前3Hello 算法 1.1.0 C++ 版
愿这本书在你的脑海中轻轻响起,留下独特而深刻的旋律。 第 0 章 前言 hello‑algo.com 2 0.1 关于本书 本项目旨在创建一本开源、免费、对新手友好的数据结构与算法入门教程。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂,学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Python、C++、Java、C#、Go、Swift、JavaScript、TypeScript、Dart、 标题注释,用于标注函数、类、测试样例等 */ // 内容注释,用于详解代码 /** * 多行 * 注释 */ 0.2.2 在动画图解中高效学习 相较于文字,视频和图片具有更高的信息密度和结构化程度,更易于理解。在本书中,重点和难点知识将主 要通过动画以图解形式展示,而文字则作为解释与补充。 如果你在阅读本书时,发现某段内容提供了如图 0‑2 所示的动画图解,请以图为主、以文字为辅,综合两者 代码块与对应的源代码文件 除了本地运行代码,网页版还支持 Python 代码的可视化运行(基于 pythontutor 实现)。如图 0‑6 所示,你 可以点击代码块下方的“可视化运行”来展开视图,观察算法代码的执行过程;也可以点击“全屏观看”,以 获得更好的阅览体验。 图 0‑6 Python 代码的可视化运行 第 0 章 前言 hello‑algo.com 8 0.2.4 在提问讨论中共同成长0 码力 | 379 页 | 18.47 MB | 1 年前3Hello 算法 1.0.0 C++版
愿这本书在你的脑海中轻轻响起,留下独特而深刻的旋律。 第 0 章 前言 hello‑algo.com 2 0.1 关于本书 本项目旨在创建一本开源、免费、对新手友好的数据结构与算法入门教程。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂,学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Python、C++、Java、C#、Go、Swift、JavaScript、TypeScript、Dart、 内容注释,用于详解代码 /** * 多行 第 0 章 前言 hello‑algo.com 5 * 注释 */ 0.2.2 在动画图解中高效学习 相较于文字,视频和图片具有更高的信息密度和结构化程度,更易于理解。在本书中,重点和难点知识将主 要通过动画以图解形式展示,而文字则作为解释与补充。 如果你在阅读本书时,发现某段内容提供了如图 0‑2 所示的动画图解,请以图为主、以文字为辅,综合两者 代码块与对应的源代码文件 除了本地运行代码,网页版还支持 Python 代码的可视化运行(基于 pythontutor 实现)。如图 0‑6 所示,你 可以点击代码块下方的“可视化运行”来展开视图,观察算法代码的执行过程;也可以点击“全屏观看”,以 获得更好的阅览体验。 图 0‑6 Python 代码的可视化运行 第 0 章 前言 hello‑algo.com 8 0.2.4 在提问讨论中共同成长0 码力 | 378 页 | 17.59 MB | 1 年前3Hello 算法 1.0.0b5 C++版
愿这本书在你的脑海中轻轻响起,留下独特而深刻的旋律。 第 0 章 前言 hello‑algo.com 2 0.1 关于本书 本项目旨在创建一本开源免费、新手友好的数据结构与算法入门教程。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂、学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Java、C++、Python、Go、JS、TS、C#、Swift、Rust、Dart、Zig 等 语言。 标题注释,用于标注函数、类、测试样例等 */ // 内容注释,用于详解代码 /** * 多行 * 注释 */ 0.2.2 在动画图解中高效学习 相较于文字,视频和图片具有更高的信息密度和结构化程度,更易于理解。在本书中,重点和难点知识将主 要通过动画和图解形式展示,而文字则作为动画和图片的解释与补充。 如果你在阅读本书时,发现某段内容提供了图 0‑2 所示的动画或图解,请以图为主、以文字为辅,综合两者 图相较于链表,提供了更丰富的逻辑信息,但需要占用更大的内存空间。 1.2.3 数据结构与算法的关系 如图 1‑4 所示,数据结构与算法高度相关、紧密结合,具体表现以下三个方面。 ‧ 数据结构是算法的基石。数据结构为算法提供了结构化存储的数据,以及用于操作数据的方法。 ‧ 算法是数据结构发挥作用的舞台。数据结构本身仅存储数据信息,结合算法才能解决特定问题。 ‧ 算法通常可以基于不同的数据结构进行实现,并往往有对应最优的数据结构,但最终执行效率可能相0 码力 | 377 页 | 30.69 MB | 1 年前3Hello 算法 1.0.0b4 C++版
. . . . . . . . . . . . . 336 1 0. 前言 0.1. 关于本书 本项目旨在创建一本开源免费、新手友好的数据结构与算法入门教程。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂、学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Java, C++, Python, Go, JS, TS, C#, Swift, Zig 等语言。 ‧ 标题注释,用于标注函数、类、测试样例等 */ // 内容注释,用于详解代码 /** * 多行 * 注释 */ 0.2.2. 在动画图解中高效学习 相较于文字,视频和图片具有更高的信息密度和结构化程度,因此更易于理解。在本书中,重点和难点知识 将主要通过动画和图解形式展示,而文字则作为动画和图片的解释与补充。 在阅读本书时,如果发现某段内容提供了动画或图解,建议以图为主线,以文字(通常位于图像上方)为辅, 更丰 富的逻辑信息,但需要占用更大的内存空间。 1.2.3. 数据结构与算法的关系 「数据结构」与「算法」高度相关且紧密结合,具体表现在: ‧ 数据结构是算法的基石。数据结构为算法提供了结构化存储的数据,以及用于操作数据的方法。 ‧ 算法是数据结构发挥的舞台。数据结构本身仅存储数据信息,通过结合算法才能解决特定问题。 ‧ 特定算法通常有对应最优的数据结构。算法通常可以基于不同的数据结构进行实现,但最终执行效率0 码力 | 343 页 | 27.39 MB | 1 年前3Hello 算法 1.2.0 简体中文 C++ 版
标题注释,用于标注函数、类、测试样例等 */ // 内容注释,用于详解代码 /** * 多行 * 注释 */ 0.2.2 在动画图解中高效学习 相较于文字,视频和图片具有更高的信息密度和结构化程度,更易于理解。在本书中,重点和难点知识将主 要通过动画以图解形式展示,而文字则作为解释与补充。 如果你在阅读本书时,发现某段内容提供了如图 0‑2 所示的动画图解,请以图为主、以文字为辅,综合两者 代码块与对应的源代码文件 除了本地运行代码,网页版还支持 Python 代码的可视化运行(基于 pythontutor 实现)。如图 0‑6 所示,你 可以点击代码块下方的“可视化运行”来展开视图,观察算法代码的执行过程;也可以点击“全屏观看”,以 获得更好的阅览体验。 图 0‑6 Python 代码的可视化运行 第 0 章 前言 www.hello‑algo.com 8 0.2.4 在提问讨论中共同成长 图相较于链表,提供了更丰富的逻辑信息,但需要占用更大的内存空间。 1.2.3 数据结构与算法的关系 如图 1‑4 所示,数据结构与算法高度相关、紧密结合,具体表现在以下三个方面。 ‧ 数据结构是算法的基石。数据结构为算法提供了结构化存储的数据,以及操作数据的方法。 ‧ 算法为数据结构注入生命力。数据结构本身仅存储数据信息,结合算法才能解决特定问题。 ‧ 算法通常可以基于不同的数据结构实现,但执行效率可能相差很大,选择合适的数据结构是关键。0 码力 | 379 页 | 18.48 MB | 10 月前3Hello 算法 1.0.0b1 C++版
. . . . . . . . . . . . 181 1 0. 写在前面 0.1. 关于本书 本项目致力于构建一本开源免费、新手友好的数据结构与算法入门书。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂、学习曲线平滑; ‧ 算法源代码皆可一键运行,支持 Java, C++, Python, Go, JS, TS, C#, Swift, Zig 等语言; ‧ /* 标题注释,用于标注函数、类、测试样例等 */ // 内容注释,用于详解代码 /** * 多行 * 注释 */ 0.2.3. 在动画图解中高效学习 视频和图片相比于文字的信息密度和结构化程度更高,更容易理解。在本书中,知识重难点会主要以动画、图 解的形式呈现,而文字的作用则是作为动画和图的解释与补充。 阅读本书时,若发现某段内容提供了动画或图解,建议你以图为主线,将文字内容(一般在图的上方)对齐到 供了更多 的逻辑信息,但需要占用更多的内存空间。 1.2.3. 数据结构与算法的关系 「数据结构」与「算法」是高度相关、紧密嵌合的,体现在: ‧ 数据结构是算法的底座。数据结构为算法提供结构化存储的数据,以及操作数据的对应方法。 ‧ 算法是数据结构发挥的舞台。数据结构仅存储数据信息,结合算法才可解决特定问题。 ‧ 算法有对应最优的数据结构。给定算法,一般可基于不同的数据结构实现,而最终执行效率往往相差很0 码力 | 187 页 | 14.71 MB | 1 年前3Hello 算法 1.0.0b2 C++版
. . . . . . . . . . . . 191 1 0. 写在前面 0.1. 关于本书 本项目致力于构建一本开源免费、新手友好的数据结构与算法入门书。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂、学习曲线平滑; ‧ 算法源代码皆可一键运行,支持 Java, C++, Python, Go, JS, TS, C#, Swift, Zig 等语言; ‧ /* 标题注释,用于标注函数、类、测试样例等 */ // 内容注释,用于详解代码 /** * 多行 * 注释 */ 0.2.3. 在动画图解中高效学习 视频和图片相比于文字的信息密度和结构化程度更高,更容易理解。在本书中,知识重难点会主要以动画、图 解的形式呈现,而文字的作用则是作为动画和图的解释与补充。 阅读本书时,若发现某段内容提供了动画或图解,建议你以图为主线,将文字内容(一般在图的上方)对齐到 供了更多 的逻辑信息,但需要占用更多的内存空间。 1.2.3. 数据结构与算法的关系 「数据结构」与「算法」是高度相关、紧密嵌合的,体现在: ‧ 数据结构是算法的底座。数据结构为算法提供结构化存储的数据,以及操作数据的对应方法。 ‧ 算法是数据结构发挥的舞台。数据结构仅存储数据信息,结合算法才可解决特定问题。 ‧ 算法有对应最优的数据结构。给定算法,一般可基于不同的数据结构实现,而最终执行效率往往相差很0 码力 | 197 页 | 15.72 MB | 1 年前3
共 28 条
- 1
- 2
- 3