自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(120)
  • 收藏
  • 关注

原创 VS Code Dev Containers 教程:从基础到进阶配置

vs code dev container教程

2024-03-21 16:47:03 11462 3

原创 CMake 函数和宏

本文详细探讨了CMake中函数与宏的核心概念, 包括定义语法, 参数解析, 返回值设置以及常见错误分析. 通过具体示例, 讲解了cmake_parse_arguments的使用方法, 以及如何利用CMake 3.25新增的return语句优化代码结构. 此外, 对比了函数与宏的区别, 帮助开发者理解二者在作用域和性能上的差异.

2025-03-20 23:56:08 118

原创 clang-tidy用std::format替换printf函数

本文详细介绍了如何通过 Clang-Tidy 工具将遗留 C/C++ 代码中的 printf 函数替换为更安全, 更现代的 std::format 或 fmt::format. 我们提供了安装指南, 具体配置步骤以及实际代码转换示例, 帮助开发者快速上手并优化代码质量. 此外, 还探讨了 printf 的缺陷及替代方案的优势, 助力团队实现代码现代化.

2025-03-20 16:08:38 1010

原创 CMake基础之-控制流

cmake 控制流语句教程

2025-03-18 23:43:45 731

原创 C++基础: Rule of five/zero/three

本文详细解析了C++中的Rule of Five/Zero/Three原则, 通过实现一个简单字符串类的实例, 逐步展示如何正确定义拷贝, 移动构造函数和赋值操作符. 同时, 文章强调了Rule of Zero的重要性, 提倡尽量使用标准库工具类来简化资源管理, 减少手动定义默认操作的需求. 这些原则不仅有助于避免常见的内存管理问题, 还能显著提升代码的可维护性和性能.

2025-03-18 22:46:03 693

原创 CMake基础知识 - 变量

本文介绍CMake变量.

2025-03-17 23:28:13 232

原创 CMake 开发库(Library)的最佳实践

本文详细介绍了使用Modern CMake开发库的最佳实践, 涵盖以Target为核心的构建方式, 正确打包库的方法, 依赖管理技巧以及保持CMakeLists.txt整洁的策略. 通过实例代码展示如何优化CMake脚本, 帮助开发者提高项目构建效率, 减少维护成本. 文章还提供了参考示例和视频教程, 为C++开发者提供全面指导.

2025-03-17 20:37:38 1143

原创 C++博客分享

C++ 每周分享.

2025-03-16 23:34:33 313

原创 C++ 返回值优化(Return Value Optimization)

本文深入探讨C++中的返回值优化(RVO), 包括命名返回值优化(NRVO)和无名返回值优化(URVO), 通过实例代码展示RVO如何提高程序性能, 避免不必要的临时对象创建. 同时, 讨论RVO的发展历程, 失效情况及与std::move的区别, 帮助开发者优化代码.

2025-03-16 22:32:21 790

原创 Vagrant+VMWare 安装Ubuntu24.04

介绍如何配置VMware+vagrant来安装Ubuntu 24.04

2025-03-16 13:28:47 803

原创 如何在CLion中查看代码覆盖率

本文介绍CLion IDE代码覆盖率如何使用

2025-03-15 23:52:39 328

原创 理解C++值类别(lvalue, rvalue, prvalue, xvalue)

本文详细解析C++值类别的演进与应用, 涵盖左值, 右值, 纯右值及将亡值的概念及其在现代C++中的作用. 通过学习右值引用与移动语义, 开发者可以优化资源管理, 减少不必要的拷贝操作, 从而提高程序性能. 适合希望深入了解C++底层机制的开发者阅读.

2025-03-15 19:54:28 733

原创 Hugo Shortcode 实现Markdown多标签页代码

hugo shortcode 教程

2025-03-11 20:25:23 635

原创 C++20 新特性总结

本文全面总结了C++20的重要更新, 涵盖三路比较运算符, 模板参数占位符, 概念与要求, Ranges库, std::span, 类型模板参数扩展, 编译时计算, Lambda扩展, 格式化输出, 日期与时区支持, 协程, 多线程同步原语, 同步输出流以及模块系统. 通过实际代码示例和关键点解析, 帮助读者快速掌握这些新特性, 提升开发效率.

2025-03-11 14:39:38 1944

原创 VS Code C++ 开发环境配置

本文介绍如何用vscode 打造一个C++ IDE.

2025-03-05 23:37:34 2326

原创 C++17 新增特性总结: 模板编程和标准库方面

本文介绍C++17 中的模板编程和标准库的改进. 包含自动模板参数推导, 编译时if, 折叠表达式等内容.

2025-03-05 16:59:01 1168

原创 图论基础算法: 二分图的判定(C++)

本文详细介绍了二分图的基本概念与核心性质, 包括顶点集分割与无奇数环特性. 重点讲解了使用染色法(DFS和BFS)判定二分图的具体步骤与代码实现, 并结合LeetCode经典例题进行解析. 文章旨在帮助读者深入理解二分图的理论基础与实际应用, 提升图论算法设计能力.

2025-03-04 23:18:12 707

原创 C++17 新增特性总结: 核心语言特性

本文全面概述了C++17的新增特性, 涵盖结构化绑定, 带初始化的if/switch语句, inline变量增强, 聚合扩展, 强制复制省略, lambda表达式增强, 模板改进, 命名空间增强, 新增属性(如[[nodiscard]], [[fallthrough]], [[maybe_unused]]), UTF-8字符字面量, noexcept作为类型系统的一部分, 表达式求值顺序, 枚举初始化改进, auto直接初始化行为, 十六进制浮点字面量, 单参数static_assert, 预处理宏__ha

2025-03-04 19:41:31 1099

原创 C++核心指导原则: C风格编程及其他杂项

本文详细总结了C++核心指导原则中的其他杂项规则, 包括C风格编程的最佳实践, 结构性设计建议以及常见的编码误区. 内容涵盖了如何优先选择C++特性, 分离稳定与不稳定代码, 避免循环依赖等方面, 并提供了具体的建议和示例. 通过遵循这些指导原则, 开发者可以编写出更加安全, 高效且易于维护的C++程序, 提升代码质量.

2025-03-03 21:04:34 696

原创 C++核心指导原则: 标准库

本文详细总结了C++核心指导原则中的标准库规则, 旨在帮助开发者更好地理解和应用这些规则. 内容涵盖了容器选择, 字符串处理, I/O操作等方面的最佳实践, 强调了使用标准库的重要性, 并提供了具体的建议和示例, 以确保代码的安全性, 效率和可维护性. 通过遵循这些指导原则, 开发者可以编写出更加健壮和高效的C++程序.

2025-03-03 20:41:27 1029

原创 网络流算法: Dinic算法

本文详细介绍了Dinic算法, 这是一种基于Ford-Fulkerson方法的高效网络流算法, 用于解决最大流问题. Dinic算法通过引入层次图的概念, 利用广度优先搜索(BFS)和深度优先搜索(DFS)来加速增广路径的查找. 文章详细阐述了层次图的构建步骤, 增广路径的寻找过程以及残量图的更新方法, 并通过C++代码实现展示了算法的具体应用.

2025-03-01 17:34:53 1446

原创 C++核心指导原则: 命名和布局建议

本文深入探讨了C++核心指导原则中的命名和布局建议, 旨在帮助开发者提升代码的可读性和维护性. 文章强调了保持一致的命名风格和代码布局的重要性, 避免在注释中重复代码内容, 以及在命名中避免编码类型信息. 通过遵循这些建议, 开发者可以减少认知负荷, 提高团队协作效率, 使代码更加专业和易于维护.

2025-03-01 13:37:32 895

原创 网络流算法: Edmonds-Karp算法

本文详细介绍了网络流算法, 重点讲解了Ford-Fulkerson方法和Edmonds-Karp算法. 通过构建残量图和寻找增广路径, 逐步增加网络中的流量, 直至达到最大流. 文章还提供了算法的代码实现和演示, 帮助读者深入理解如何在流网络中最大化流量. 适合对算法和数据结构感兴趣的读者, 特别是希望掌握网络流问题的学习者.

2025-02-28 23:47:21 1001

原创 C++核心指导原则: 源文件

本文详细介绍了C++核心指导原则中关于源文件的最佳实践, 包括头文件管理, 命名空间使用, 依赖关系优化等内容. 通过遵循这些规则, 开发者可以避免常见的编译错误, 提高代码的可读性和可维护性. 文章还探讨了如何正确使用#include保护, 避免循环依赖以及合理组织命名空间等关键技巧. 无论你是C++初学者还是经验丰富的开发者, 本文都将为你提供实用的指导, 帮助你编写更加高效的C++代码

2025-02-28 17:38:23 763

原创 Wireshark Lua 插件教程

本文深入探讨了如何在Wireshark中使用Lua脚本进行自定义协议的解析和数据导出. 通过详细的代码示例和步骤说明, 读者可以学习如何编写Dissector来解析Wireshark不支持的协议, 以及如何利用Dumper导出特定协议字段. 文章还涵盖了TCP包重组, 调试技巧等高级主题, 帮助开发者高效处理网络数据包分析任务, 提升工作效率.

2025-02-27 20:44:41 1548

原创 C++核心指导原则: 常量和不可变性

本文介绍C++ Core Guidelines 常量和不可变性部分.

2025-02-27 19:19:15 909

原创 C++核心指导原则: 泛型编程

本文介绍C++ Core Guidelines 泛型编程.

2025-02-27 19:18:21 927

原创 Jenkinsfile流水线构建教程

本文介绍Jenkins2 Jenkinsfile构建流水线的方法.

2025-02-26 21:16:38 1300

原创 C++核心指导原则: 并发和并行

本文介绍C++ Core Guidelines 并发和并行部分.

2025-02-26 19:17:25 1031

原创 多源最短路径求解: Floyd-Warshall算法和Johnson 算法

本文介绍图论中多源最短路径算法. 主要讲述Floyd-Warshall算法.

2025-02-25 19:59:42 965

原创 C++核心指导原则: 表达式和语句

本文介绍C++ Core Guidelines 表达式和语句部分.

2025-02-25 17:27:20 1098

原创 C++核心指导原则: 错误处理

本文介绍C++ Core Guidelines性能部分.

2025-02-24 22:07:25 682

原创 欧拉回路与哈密尔顿回路: Fleury算法与Hierholzer 算法(C++)

本文介绍图论中的欧拉回路和汉密尔顿回路. 并介绍求解欧拉回路的两种算法.

2025-02-24 21:41:48 1114

原创 C++核心指导原则: 性能部分

本文介绍C++ Core Guidelines性能优化部分.

2025-02-23 20:14:16 706

原创 C++核心指导原则: 资源管理

本文介绍C++ Core Guideline资源管理部分.

2025-02-23 19:46:55 1072

原创 C++核心指导原则: 枚举

本文解析C++ Core Guidelines 枚举部分.

2025-02-23 18:56:57 497

原创 二分图检测算法以及最大匹配算法(C++)

本文介绍二分图, 以及二分图中的最多匹配算法-匈牙利算法. 用代码和图示帮助读者理解.

2025-02-23 18:18:19 788

原创 并查集: 轻松解决连通性问题

本文介绍并查集. 用图示和代码以及LeetCode例题帮助读者理解.

2025-02-22 19:44:58 1185

原创 C++核心指导原则: 类和类层次结构

本文介绍C++ Core Guidelines关于类和类的层次结构部分.

2025-02-22 13:46:27 1041

原创 有向图的强连通分量: Kosaraju算法和Tarjan算法详解

本文介绍强连通分量问题的解法, 主要介绍Kosaraju和Tarjan算法.

2025-02-19 19:44:44 1510

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除