现代C++ 教程:高速上手C++11/14/17/20. . . . . . . . . . . . . . . . . . . . . . . . . 81 附录 1:进一步阅读的学习材料 82 附录 2:现代 C++ 的最佳实践 82 常用工具 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 构化绑定), 这些特性的出现再一次修正了我们在 C++ 中的编程范式。 现代 C++ 还为自身的标准库增加了非常多的工具和方法,诸如在语言自身标准的层面上制定了 std::thread,从而支持了并发编程,在不同平台上不再依赖于系统底层的 API,实现了语言层面的跨 平台支持;std::regex 提供了完整的正则表达式支持等等。C++98 已经被实践证明了是一种非常成功 的『范型』,而现代 本节简单介绍了正则表达式本身,然后根据使用正则表达式的主要需求,通过一个实际的例子介绍 了正则表达式库的使用。 习题 1. 在 Web 服务器开发中,我们通常希望服务某些满足某个条件的路由。正则表达式便是完成这一目 标的工具之一。 给定如下请求结构: 60 习题 第 6 章正则表达式 struct Request { // request method, POST, GET; path; HTTP version0 码力 | 83 页 | 2.42 MB | 1 年前3
Hello 算法 1.1.0 C++ 版AlphaGo 的精彩棋局、ChatGPT 的自然交互,这些应用都是算法在计算机上的精妙演绎。 事实上,在计算机问世之前,算法和数据结构就已经存在于世界的各个角落。早期的算法相对简单,例如古 代的计数方法和工具制作步骤等。随着文明的进步,算法逐渐变得更加精细和复杂。从巧夺天工的匠人技艺、 到解放生产力的工业产品、再到宇宙运行的科学规律,几乎每一件平凡或令人惊叹的事物背后,都隐藏着精 妙的算法思想。 数据结构与算法有模糊的认识,在会与 不会之间反复横跳,那么本书正是为你量身定制的! 如果你已经积累一定的刷题量,熟悉大部分题型,那么本书可助你回顾与梳理算法知识体系,仓库源代码可 以当作“刷题工具库”或“算法字典”来使用。 若你是算法“大神”,我们期待收到你的宝贵建议,或者一起参与创作。 前置条件 你需要至少具备任一语言的编程基础,能够阅读和编写简单代码。 0.1.2 内容结构 本书的主要内容如图 章 前言 hello‑algo.com 9 图 0‑8 算法学习路线 0.3 小结 ‧ 本书的主要受众是算法初学者。如果你已有一定基础,本书能帮助你系统回顾算法知识,书中源代码也 可作为“刷题工具库”使用。 ‧ 书中内容主要包括复杂度分析、数据结构和算法三部分,涵盖了该领域的大部分主题。 ‧ 对于算法新手,在初学阶段阅读一本入门书至关重要,可以少走许多弯路。 ‧ 书中的动画图解通常用于0 码力 | 379 页 | 18.47 MB | 1 年前3
《深入浅出MFC》2/e出MFC》2/e 简体版可看。 《深入浅出MFC》3/e 没有如期完成的原因是,MFC 本体架构并没有什么大改 变。《深入浅出MFC》2/e 书中所论之工具及程序代码虽采用VC5+MFC42,仍 适用于目前的VC6+MFC421(唯,工具之画面或功能可能有些微变化)。 由于《深入浅出MFC》2/e 并无简体版,因此我时时收到大陆读者来信询问购 买繁体版之管道。一来我不知道是否台湾出版公司有提供海外邮购或电购,二 Microsoft Developer Studio 与MFC(Microsoft Foundation Classes)相配合,构成了一个强大 的利用C++ 进行32 位Windows 程序开发的工具,但是由于MFC 系统相当庞大,内 容繁杂,并且夹杂着大量令初学者莫明其妙的macros,更加大了学习上的难度。 当今市面上有不少讲解C++ 和VC++ 程序设计的书籍,但C++ 书籍单纯只讲C++,从 然会看不懂,以某方面来说, 也不是初学者用的书。基本上侯俊杰写的书不论文笔或是内容都相当的好,相当有购买 的价值,不过你别期望会是「初学用书」。 刚学MFC 程序,是否可以推荐几本你认为很好的工具书或者是参考书,原文的也没关 系,重要的是讲的详细。谢谢各位 dickg.bbs@csie.nctu.edu.tw:我个人认为侯俊杰先生所着的深入浅出MFC 第二版不错。 这是一本受大众推崇的0 码力 | 1009 页 | 11.08 MB | 1 年前3
Hello 算法 1.2.0 简体中文 C++ 版AlphaGo 的精彩棋局、ChatGPT 的自然交互,这些应用都是算法在计算机上的精妙演绎。 事实上,在计算机问世之前,算法和数据结构就已经存在于世界的各个角落。早期的算法相对简单,例如古 代的计数方法和工具制作步骤等。随着文明的进步,算法逐渐变得更加精细和复杂。从巧夺天工的匠人技艺、 到解放生产力的工业产品、再到宇宙运行的科学规律,几乎每一件平凡或令人惊叹的事物背后,都隐藏着精 妙的算法思想。 对数据结构与算法有模糊的认识,在会与 不会之间反复横跳,那么本书正是为你量身定制的! 如果你已经积累一定的刷题量,熟悉大部分题型,那么本书可助你回顾与梳理算法知识体系,仓库源代码可 以当作“刷题工具库”或“算法字典”来使用。 若你是算法“大神”,我们期待收到你的宝贵建议,或者一起参与创作。 前置条件 你需要至少具备任一语言的编程基础,能够阅读和编写简单代码。 0.1.2 内容结构 本书的主要内容如图 www.hello‑algo.com 9 图 0‑8 算法学习路线 0.3 小结 ‧ 本书的主要受众是算法初学者。如果你已有一定基础,本书能帮助你系统回顾算法知识,书中源代码也 可作为“刷题工具库”使用。 ‧ 书中内容主要包括复杂度分析、数据结构和算法三部分,涵盖了该领域的大部分主题。 ‧ 对于算法新手,在初学阶段阅读一本入门书至关重要,可以少走许多弯路。 ‧ 书中的动画图解通常用于0 码力 | 379 页 | 18.48 MB | 10 月前3
Hello 算法 1.0.0b5 C++版数据结构与算法有模糊的认识,在会与 不会之间反复横跳,那么这本书正是为您量身定制! 如果您已经积累一定刷题量,熟悉大部分题型,那么本书可助您回顾与梳理算法知识体系,仓库源代码可以 被当作“刷题工具库”或“算法字典”来使用。 若您是算法大神,我们期待收到您的宝贵建议,或者一起参与创作。 � 前置条件 您需要至少具备任一语言的编程基础,能够阅读和编写简单代码。 0.1.2 内容结构 本书主要内容如图 章 前言 hello‑algo.com 8 图 0‑7 算法学习路线 0.3 小结 ‧ 本书的主要受众是算法初学者。如果已有一定基础,本书能帮助您系统回顾算法知识,书内源代码也可 作为“刷题工具库”使用。 ‧ 书中内容主要包括复杂度分析、数据结构、算法三部分,涵盖了该领域的大部分主题。 ‧ 对于算法新手,在初学阶段阅读一本入门书籍至关重要,可以少走许多弯路。 ‧ 书内的动画和图解通常 ‧“时间和空间的增长趋势”表示复杂度分析关注的不是运行时间或占用空间的具体值,而是时间或空间 增长的“快慢”。 复杂度分析克服了实际测试方法的弊端,体现在以下两个方面。 ‧ 它独立于测试环境,分析结果适用于所有运行平台。 第 2 章 复杂度分析 hello‑algo.com 18 ‧ 它可以体现不同数据量下的算法效率,尤其是在大数据量下的算法性能。 � 如果你仍对复杂度的概念感到困惑,无须担心,我们会在后续章节中详细介绍。0 码力 | 377 页 | 30.69 MB | 1 年前3
Hello 算法 1.0.0 C++版数据结构与算法有模糊的认识,在会与 不会之间反复横跳,那么本书正是为你量身定制的! 如果你已经积累一定的刷题量,熟悉大部分题型,那么本书可助你回顾与梳理算法知识体系,仓库源代码可 以当作“刷题工具库”或“算法字典”来使用。 若你是算法“大神”,我们期待收到你的宝贵建议,或者一起参与创作。 � 前置条件 你需要至少具备任一语言的编程基础,能够阅读和编写简单代码。 0.1.2 内容结构 章 前言 hello‑algo.com 9 图 0‑8 算法学习路线 0.3 小结 ‧ 本书的主要受众是算法初学者。如果你已有一定基础,本书能帮助你系统回顾算法知识,书中源代码也 可作为“刷题工具库”使用。 ‧ 书中内容主要包括复杂度分析、数据结构和算法三部分,涵盖了该领域的大部分主题。 ‧ 对于算法新手,在初学阶段阅读一本入门书至关重要,可以少走许多弯路。 ‧ 书中的动画图解通常用于 ‧“时间和空间的增长趋势”表示复杂度分析关注的不是运行时间或占用空间的具体值,而是时间或空间 增长的“快慢”。 复杂度分析克服了实际测试方法的弊端,体现在以下两个方面。 ‧ 它独立于测试环境,分析结果适用于所有运行平台。 第 2 章 复杂度分析 hello‑algo.com 19 ‧ 它可以体现不同数据量下的算法效率,尤其是在大数据量下的算法性能。 � 如果你仍对复杂度的概念感到困惑,无须担心,我们会在后续章节中详细介绍。0 码力 | 378 页 | 17.59 MB | 1 年前3
Hello 算法 1.0.0b4 C++版数据结构与算法有模糊的认识,在会与 不会之间反复横跳,那么这本书正是为您量身定制! 如果您已经积累一定刷题量,熟悉大部分题型,那么本书可助您回顾与梳理算法知识体系,仓库源代码可以 被当作“刷题工具库”或“算法字典”来使用。 若您是算法大神,我们期待收到您的宝贵建议,或者一起参与创作。 � 前置条件 您需要至少具备任一语言的编程基础,能够阅读和编写简单代码。 0.1.2. 内容结构 地展开第二和第三阶段的学习。 Figure 0‑7. 算法学习路线 0.3. 小结 ‧ 本书的主要受众是算法初学者。如果已有一定基础,本书能帮助您系统回顾算法知识,书内源代码也可 作为“刷题工具库”使用。 ‧ 书中内容主要包括复杂度分析、数据结构、算法三部分,涵盖了该领域的大部分主题。 ‧ 对于算法新手,在初学阶段阅读一本入门书籍至关重要,可以少走许多弯路。 ‧ 书内的动画和图解通常 的关 系。 ‧“增长趋势”表示复杂度分析关注的是算法时间与空间的增长趋势,而非具体的运行时间或占用空间。 复杂度分析克服了实际测试方法的弊端。首先,它独立于测试环境,因此分析结果适用于所有运行平台。其 次,它可以体现不同数据量下的算法效率,尤其是在大数据量下的算法性能。 如果你对复杂度分析的概念仍感到困惑,无需担心,我们会在后续章节详细介绍。 2.1.3. 复杂度分析重要性 复杂度分0 码力 | 343 页 | 27.39 MB | 1 年前3
Hello 算法 1.0.0b1 C++版胧的理解,在 会与不会之间反复横跳,那么这本书就是为你而写! 如果您是「算法老手」,已经积累一定刷题量,接触过大多数题型,那么本书可以帮助你回顾与梳理算法知识 体系,仓库源代码可以被当作“刷题工具库”或“算法字典”来使用。 如果您是「算法大佬」,希望可以得到你的宝贵意见建议,或者一起参与创作。 � 前置条件 您需要至少具备任一语言的编程基础,能够阅读和编写简单代码。 0.1.2. 内容结构 评论区示例 0. 写在前面 hello‑algo.com 7 0.3. 小结 ‧ 本书主要面向算法初学者。对于已经有一定积累的同学,这本书可以帮助你系统回顾算法知识,源代码 可被当作“刷题工具库”来使用。 ‧ 书中内容主要分为复杂度分析、数据结构、算法三部分,覆盖了该领域的大部分主题。 ‧ 对于算法小白,在初学阶段阅读一本入门书是非常有必要的,可以少走许多弯路。 ‧ 书内的动画和图 关系; ‧“增长趋势”表示复杂度分析不关心算法具体使用了多少时间或占用了多少空间,而是给出一种“趋势性 分析”; 复杂度分析克服了实际测试方法的弊端。一是独立于测试环境,分析结果适用于所有运行平台。二是可以体现 不同数据量下的算法效率,尤其是可以反映大数据量下的算法性能。 如果感觉对复杂度分析的概念一知半解,无需担心,后续章节会展开介绍。 2.1.3. 复杂度分析重要性 复杂度分析给0 码力 | 187 页 | 14.71 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 11 现代 CMake 进阶指南--build 指令,不同平台,统一命 令! • cmake -B build • cmake --build build -j4 • sudo cmake --build build --target install • cmake -B build 免去了先创建 build 目录再切换进去再指定源码目录的麻烦。 • cmake --build build 统一了不同平台( Linux 上会调用 CMAKE_INSTALL_PREFIX ) -G 选项:指定要用的生成器 • 众所周知, CMake 是一个跨平台的构建系统,可以从 CMakeLists.txt 生成不同类型的构建系 统(比如 Linux 的 make , Windows 的 MSBuild ),从而让构建规则可以只写一份,跨平 台使用。 • 过去的软件(例如 TBB )要跨平台,只好 Makefile 的构建规则写一份, MSBuild 也写一份 。 MacOS 系统默认是 Xcode 生成器。 • 可以用 -G 参数改用别的生成器,例如 cmake -GNinja 会生成 Ninja 这个构建系统的构 建规则。 Ninja 是一个高性能,跨平台的构建系统, Linux 、 Windows 、 MacOS 上都可 以用。 • Ninja 可以从包管理器里安装,没有包管理器的 Windows 可以用 Python 的包管理器安 装: •0 码力 | 166 页 | 6.54 MB | 1 年前3
Hello 算法 1.0.0b2 C++版胧的理解,在 会与不会之间反复横跳,那么这本书就是为你而写! 如果您是「算法老手」,已经积累一定刷题量,接触过大多数题型,那么本书可以帮助你回顾与梳理算法知识 体系,仓库源代码可以被当作“刷题工具库”或“算法字典”来使用。 如果您是「算法大佬」,希望可以得到你的宝贵意见建议,或者一起参与创作。 � 前置条件 您需要至少具备任一语言的编程基础,能够阅读和编写简单代码。 0.1.2. 内容结构 评论区示例 0. 写在前面 hello‑algo.com 7 0.3. 小结 ‧ 本书主要面向算法初学者。对于已经有一定积累的同学,这本书可以帮助你系统回顾算法知识,源代码 可被当作“刷题工具库”来使用。 ‧ 书中内容主要分为复杂度分析、数据结构、算法三部分,覆盖了该领域的大部分主题。 ‧ 对于算法小白,在初学阶段阅读一本入门书是非常有必要的,可以少走许多弯路。 ‧ 书内的动画和图 关系; ‧“增长趋势”表示复杂度分析不关心算法具体使用了多少时间或占用了多少空间,而是给出一种“趋势性 分析”; 复杂度分析克服了实际测试方法的弊端。一是独立于测试环境,分析结果适用于所有运行平台。二是可以体现 不同数据量下的算法效率,尤其是可以反映大数据量下的算法性能。 如果感觉对复杂度分析的概念一知半解,无需担心,后续章节会展开介绍。 2.1.3. 复杂度分析重要性 复杂度分析给0 码力 | 197 页 | 15.72 MB | 1 年前3
共 23 条
- 1
- 2
- 3













