 C++高性能并行编程与优化 -  课件 - 17 由浅入深学习 map 容器由浅入深学习 map 容器 by 彭于斌( @archibate ) 我负责监督你鞋习 ! 我负责监督你鞋习 ! 本期看点: 用方括号 [ ] 取出 map 元素居然是错误的! 能不能在遍历的同时删除元素?安全吗? emplace , emplace_hint , try_emplace 的区别? 课程安排 1. vector 容器初体验 & 迭代器入门 (BV1qF411T7sd) 2 技术,用户自定义迭代器与算法 9. allocator ,内存管理与对象生命周期 10. C++ 异常处理机制的前世今生 我们都要认真鞋习哦 我们都要认真鞋习哦 第一章:读取与写入 我负责监督你鞋习 ! 我负责监督你鞋习 ! map 查找元素的两个接口 • map 提供了两个查找元素的接口,一曰 [] ,二曰 at 。 • 那么他们两个又有什么区别呢?很多新手都分不清他俩,可能只认识 [] 。 m.insert({key, val}) 判断是否存在,用 m.count(key) 若存在则删除,用 m.erase(key) 第四章:迭代与遍历 物理格式 逻辑格式 面壁者罗辑监督你鞋习 ! 面壁者罗辑监督你鞋习 ! map 的元素类型是…… • set C++高性能并行编程与优化 -  课件 - 17 由浅入深学习 map 容器由浅入深学习 map 容器 by 彭于斌( @archibate ) 我负责监督你鞋习 ! 我负责监督你鞋习 ! 本期看点: 用方括号 [ ] 取出 map 元素居然是错误的! 能不能在遍历的同时删除元素?安全吗? emplace , emplace_hint , try_emplace 的区别? 课程安排 1. vector 容器初体验 & 迭代器入门 (BV1qF411T7sd) 2 技术,用户自定义迭代器与算法 9. allocator ,内存管理与对象生命周期 10. C++ 异常处理机制的前世今生 我们都要认真鞋习哦 我们都要认真鞋习哦 第一章:读取与写入 我负责监督你鞋习 ! 我负责监督你鞋习 ! map 查找元素的两个接口 • map 提供了两个查找元素的接口,一曰 [] ,二曰 at 。 • 那么他们两个又有什么区别呢?很多新手都分不清他俩,可能只认识 [] 。 m.insert({key, val}) 判断是否存在,用 m.count(key) 若存在则删除,用 m.erase(key) 第四章:迭代与遍历 物理格式 逻辑格式 面壁者罗辑监督你鞋习 ! 面壁者罗辑监督你鞋习 ! map 的元素类型是…… • set- ::value_type 是 V 。 • map - ::value_type 是 pair - 。 0 码力 | 90 页 | 8.76 MB | 1 年前3
 《深入浅出MFC》2/e从消息贮列中抓取消息。如果这个消 息是WM_QUIT,GetMessage 会传回0 而结束while 循环,进而结束整个程序。 3. DispatchMessage 透过Windows USER 模块的协助与监督,把消息分派至窗口 函数。消息将在该处被判别并处理。 4. 程序不断进行2. 和3. 的动作。 5. 当使用者按下系统菜单中的Close 命令项,系统送出WM_CLOSE。通常程序 的窗口函 13 realtime REALTIME_PRIORITY_CLASS 24 图 1- 7 Wi n32 执 行 线 程 的优先权等级划分 49 SetThreadPriority 的参数 微调幅度 THREAD_PRIORITY_LOWEST -2 THREAD_PRIORITY_BELOW_NORMAL -1 THREAD_PRIORITY_NORMAL 不变 THREAD_ 最高。在每一个等级之中,你可以使用SetThreadPriority 设定精确的优先权,并且可以稍高或稍低于该等级的正常值(范围是两个点数)。你可 以把SetThreadPriority 想象是一种微调动作。 除了以上五种微调,另外还可以指定两种微调常数: 这些情况可以以图1-8 作为总结。 50 优先权等级 idle lowest below normal normal above normal highest time0 码力 | 1009 页 | 11.08 MB | 1 年前3 《深入浅出MFC》2/e从消息贮列中抓取消息。如果这个消 息是WM_QUIT,GetMessage 会传回0 而结束while 循环,进而结束整个程序。 3. DispatchMessage 透过Windows USER 模块的协助与监督,把消息分派至窗口 函数。消息将在该处被判别并处理。 4. 程序不断进行2. 和3. 的动作。 5. 当使用者按下系统菜单中的Close 命令项,系统送出WM_CLOSE。通常程序 的窗口函 13 realtime REALTIME_PRIORITY_CLASS 24 图 1- 7 Wi n32 执 行 线 程 的优先权等级划分 49 SetThreadPriority 的参数 微调幅度 THREAD_PRIORITY_LOWEST -2 THREAD_PRIORITY_BELOW_NORMAL -1 THREAD_PRIORITY_NORMAL 不变 THREAD_ 最高。在每一个等级之中,你可以使用SetThreadPriority 设定精确的优先权,并且可以稍高或稍低于该等级的正常值(范围是两个点数)。你可 以把SetThreadPriority 想象是一种微调动作。 除了以上五种微调,另外还可以指定两种微调常数: 这些情况可以以图1-8 作为总结。 50 优先权等级 idle lowest below normal normal above normal highest time0 码力 | 1009 页 | 11.08 MB | 1 年前3
 面向亿行 C/C++ 代码的静态分析系统设计及实践-肖枭分析技术在企业中的应用 目录 代码质量管理是个大问题 静态分析+代码评审的实践  学习和强调,红线和惩罚,100%的测试 覆盖率,和事后复盘并不够  有经验的程序员也会犯错  对代码提要求很难监督落实  测试更多是验证功能,很难检测编码缺陷  代码的快速变化使质量更难管 生产质量是责任 靠运维和事后复盘善后够吗?  静态分析工具:半智能的代码分析机器人  静态分析辅助代码评审0 码力 | 39 页 | 6.88 MB | 1 年前3 面向亿行 C/C++ 代码的静态分析系统设计及实践-肖枭分析技术在企业中的应用 目录 代码质量管理是个大问题 静态分析+代码评审的实践  学习和强调,红线和惩罚,100%的测试 覆盖率,和事后复盘并不够  有经验的程序员也会犯错  对代码提要求很难监督落实  测试更多是验证功能,很难检测编码缺陷  代码的快速变化使质量更难管 生产质量是责任 靠运维和事后复盘善后够吗?  静态分析工具:半智能的代码分析机器人  静态分析辅助代码评审0 码力 | 39 页 | 6.88 MB | 1 年前3
 C++高性能并行编程与优化 -  课件 - 08 CUDA 开启的 GPU 编程malloc/free 之类的概念。 • 熟悉 STL 中的容器、函数模板等。 • 英伟达 GTX900 及以上显卡。 • CUDA 11 及以上。 • CMake 3.18 及以上。 我负责监督你学习 第 0 章: Hello, world! CMake 中启用 CUDA 支持 • 最新版的 CMake ( 3.18 以上),只需在 LANGUAGES 后面加上 CUDA 即可启用0 码力 | 142 页 | 13.52 MB | 1 年前3 C++高性能并行编程与优化 -  课件 - 08 CUDA 开启的 GPU 编程malloc/free 之类的概念。 • 熟悉 STL 中的容器、函数模板等。 • 英伟达 GTX900 及以上显卡。 • CUDA 11 及以上。 • CMake 3.18 及以上。 我负责监督你学习 第 0 章: Hello, world! CMake 中启用 CUDA 支持 • 最新版的 CMake ( 3.18 以上),只需在 LANGUAGES 后面加上 CUDA 即可启用0 码力 | 142 页 | 13.52 MB | 1 年前3
 Hello 算法 1.0.0b1 C++版失、文字歧义、解 释不清晰、行文结构不合理等问题,请您帮忙修正,以帮助其他读者获取更优质的学习内容。所有撰稿人将被 展示在仓库与网站主页,以感谢他们对开源社区的无私奉献! 12.2.1. 内容微调 每个页面的右上角都有一个「编辑」图标,你可以按照以下步骤修改文字或代码: 1. 点击编辑按钮,如果遇到提示“需要 Fork 此仓库”,请通过; 2. 修改 Markdown 源文件内容,并检查内容正确性,尽量保持排版格式统一;0 码力 | 187 页 | 14.71 MB | 1 年前3 Hello 算法 1.0.0b1 C++版失、文字歧义、解 释不清晰、行文结构不合理等问题,请您帮忙修正,以帮助其他读者获取更优质的学习内容。所有撰稿人将被 展示在仓库与网站主页,以感谢他们对开源社区的无私奉献! 12.2.1. 内容微调 每个页面的右上角都有一个「编辑」图标,你可以按照以下步骤修改文字或代码: 1. 点击编辑按钮,如果遇到提示“需要 Fork 此仓库”,请通过; 2. 修改 Markdown 源文件内容,并检查内容正确性,尽量保持排版格式统一;0 码力 | 187 页 | 14.71 MB | 1 年前3
 Hello 算法 1.0.0b2 C++版失、文字歧义、解 释不清晰、行文结构不合理等问题,请您帮忙修正,以帮助其他读者获取更优质的学习内容。所有撰稿人将被 展示在仓库与网站主页,以感谢他们对开源社区的无私奉献! 12.2.1. 内容微调 每个页面的右上角都有一个「编辑」图标,你可以按照以下步骤修改文字或代码: 1. 点击编辑按钮,如果遇到提示“需要 Fork 此仓库”,请通过; 2. 修改 Markdown 源文件内容,并检查内容正确性,尽量保持排版格式统一;0 码力 | 197 页 | 15.72 MB | 1 年前3 Hello 算法 1.0.0b2 C++版失、文字歧义、解 释不清晰、行文结构不合理等问题,请您帮忙修正,以帮助其他读者获取更优质的学习内容。所有撰稿人将被 展示在仓库与网站主页,以感谢他们对开源社区的无私奉献! 12.2.1. 内容微调 每个页面的右上角都有一个「编辑」图标,你可以按照以下步骤修改文字或代码: 1. 点击编辑按钮,如果遇到提示“需要 Fork 此仓库”,请通过; 2. 修改 Markdown 源文件内容,并检查内容正确性,尽量保持排版格式统一;0 码力 | 197 页 | 15.72 MB | 1 年前3
 Hello 算法 1.0.0b4 C++版字歧义、解释不清晰或行文结构不合理等问题,请协助我们进行修正,以帮助其他读者获得更优质的学习资 源。所有撰稿人将在仓库和网站主页上展示,以感谢他们对开源社区的无私奉献! 16.2.1. 内容微调 在每个页面的右上角有一个「编辑」图标,您可以按照以下步骤修改文本或代码: 1. 点击编辑按钮,如果遇到“需要 Fork 此仓库”的提示,请同意该操作。 2. 修改 Markdown 源文件内0 码力 | 343 页 | 27.39 MB | 1 年前3 Hello 算法 1.0.0b4 C++版字歧义、解释不清晰或行文结构不合理等问题,请协助我们进行修正,以帮助其他读者获得更优质的学习资 源。所有撰稿人将在仓库和网站主页上展示,以感谢他们对开源社区的无私奉献! 16.2.1. 内容微调 在每个页面的右上角有一个「编辑」图标,您可以按照以下步骤修改文本或代码: 1. 点击编辑按钮,如果遇到“需要 Fork 此仓库”的提示,请同意该操作。 2. 修改 Markdown 源文件内0 码力 | 343 页 | 27.39 MB | 1 年前3
 Hello 算法 1.1.0 C++ 版16 章 附录 hello‑algo.com 366 开源的魅力 纸质图书的两次印刷的间隔时间往往较久,内容更新非常不方便。 而在本开源书中,内容更迭的时间被缩短至数日甚至几个小时。 1. 内容微调 如图 16‑3 所示,每个页面的右上角都有“编辑图标”。您可以按照以下步骤修改文本或代码。 1. 点击“编辑图标”,如果遇到“需要 Fork 此仓库”的提示,请同意该操作。 2. 修改 Markdown0 码力 | 379 页 | 18.47 MB | 1 年前3 Hello 算法 1.1.0 C++ 版16 章 附录 hello‑algo.com 366 开源的魅力 纸质图书的两次印刷的间隔时间往往较久,内容更新非常不方便。 而在本开源书中,内容更迭的时间被缩短至数日甚至几个小时。 1. 内容微调 如图 16‑3 所示,每个页面的右上角都有“编辑图标”。您可以按照以下步骤修改文本或代码。 1. 点击“编辑图标”,如果遇到“需要 Fork 此仓库”的提示,请同意该操作。 2. 修改 Markdown0 码力 | 379 页 | 18.47 MB | 1 年前3
 Hello 算法 1.0.0b5 C++版将被展示在本书的仓库主页上,以感谢他们对开源社区的无私奉献。 � 开源的魅力 纸质书籍的两次印刷的间隔时间往往需要数年,内容更新非常不方便。 然而在本开源书中,内容更迭的时间被缩短至数日甚至几个小时。 1. 内容微调 如图 16‑1 所示,每个页面的右上角都有“编辑图标”。您可以按照以下步骤修改文本或代码。 1. 点击“编辑图标”,如果遇到“需要 Fork 此仓库”的提示,请同意该操作。 2. 修改 Markdown0 码力 | 377 页 | 30.69 MB | 1 年前3 Hello 算法 1.0.0b5 C++版将被展示在本书的仓库主页上,以感谢他们对开源社区的无私奉献。 � 开源的魅力 纸质书籍的两次印刷的间隔时间往往需要数年,内容更新非常不方便。 然而在本开源书中,内容更迭的时间被缩短至数日甚至几个小时。 1. 内容微调 如图 16‑1 所示,每个页面的右上角都有“编辑图标”。您可以按照以下步骤修改文本或代码。 1. 点击“编辑图标”,如果遇到“需要 Fork 此仓库”的提示,请同意该操作。 2. 修改 Markdown0 码力 | 377 页 | 30.69 MB | 1 年前3
 Hello 算法 1.0.0 C++版附录 hello‑algo.com 368 � 开源的魅力 纸质图书的两次印刷的间隔时间往往较久,内容更新非常不方便。 而在本开源书中,内容更迭的时间被缩短至数日甚至几个小时。 1. 内容微调 如图 16‑3 所示,每个页面的右上角都有“编辑图标”。您可以按照以下步骤修改文本或代码。 1. 点击“编辑图标”,如果遇到“需要 Fork 此仓库”的提示,请同意该操作。 2. 修改 Markdown0 码力 | 378 页 | 17.59 MB | 1 年前3 Hello 算法 1.0.0 C++版附录 hello‑algo.com 368 � 开源的魅力 纸质图书的两次印刷的间隔时间往往较久,内容更新非常不方便。 而在本开源书中,内容更迭的时间被缩短至数日甚至几个小时。 1. 内容微调 如图 16‑3 所示,每个页面的右上角都有“编辑图标”。您可以按照以下步骤修改文本或代码。 1. 点击“编辑图标”,如果遇到“需要 Fork 此仓库”的提示,请同意该操作。 2. 修改 Markdown0 码力 | 378 页 | 17.59 MB | 1 年前3
共 11 条
- 1
- 2













