自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 从默认成员函数到运算符重载,彻底理解对象的“生命周期与语义

本文深入探讨了C++类与对象的核心机制,重点解析了默认成员函数的关键作用。文章首先澄清了构造函数的本质是初始化而非创建对象,并详细讲解了默认构造函数的三种形式。随后剖析了析构函数负责资源清理而非内存释放的特性,指出资源类必须自定义析构函数。在拷贝语义方面,强调了浅拷贝的风险和深拷贝的必要性,特别是对拥有资源的类。最后,文章阐释了运算符重载的工程意义和const成员函数的重要性,帮助开发者建立对象生命周期管理的核心认知。全文旨在让读者理解C++对象作为具有责任和所有权的实体,其创建、拷贝、赋值和销毁的内在逻辑

2026-01-22 10:26:49 747

原创 C++ 类与对象深度解析

本文深入解析C++类与对象的核心概念,包括类的定义、对象实例化、内存布局和this指针机制。通过对比C与C++实现Stack的差异,阐述了面向对象封装的价值:类作为抽象蓝图,对象才是占用内存的实体;成员函数通过隐式this指针区分不同对象;访问限定符强制保护对象状态。文章揭示了C++面向对象设计的底层逻辑——用语言机制约束正确性,使错误更难发生,为理解构造函数、多态等高级特性奠定基础。

2026-01-22 10:09:17 687

原创 深入理解 C++ 类与对象:从语法到底层机制的系统总结

本文系统梳理了C++类与对象的核心概念,从语法到底层实现机制。主要内容包括:1) 类的定义格式与class/struct区别;2) 访问限定符的封装作用;3) 类域与成员函数实现;4) 对象实例化的内存原理;5) this指针的隐式传递机制;6) 空指针调用成员函数的陷阱。重点揭示了类如何映射到内存、对象如何与函数绑定等底层原理,对比了C与C++实现方式的本质差异,强调封装是C++面向对象的核心。理解这些概念对掌握C++面向对象编程至关重要。

2026-01-21 18:28:30 606

原创 C++ 新手入门核心知识点总结:引用、inline 与 nullptr

本文总结了C++编程中三个关键特性:引用、inline函数和nullptr。引用作为变量别名,简化了指针操作,提高了代码安全性和效率;inline函数优化了频繁调用的小函数,避免了宏函数的缺陷;nullptr解决了C++中NULL的歧义问题,提供了更安全的空指针表示。这三个特性共同提升了C++代码的性能、安全性和可维护性,是C++开发者必须掌握的核心知识点。

2026-01-20 08:07:54 584

原创 C++ 新手入门核心知识点总结:输入输出、缺省参数与函数重载

作为 C++ 新手,输入输出、缺省参数和函数重载是入门阶段的核心知识点,也是后续复杂编程的基础。本文基于 C++ 入门教程,对这三个知识点进行系统梳理,帮助新手快速理解并上手实践。

2026-01-19 18:30:29 494

原创 命名空间(namespace)从“为什么”到“工程级用法”一次讲透

本文系统讲解C++命名空间(namespace)的核心知识与应用实践。首先分析命名空间解决全局名字冲突的本质问题,详细说明其定义语法、嵌套和自动合并等特性。重点对比三种使用方式:作用域限定符(最推荐)、using引入单个成员和using namespace(项目禁用)。特别强调标准库std的正确使用方法,指出新手常见陷阱,如头文件误用using namespace。最后给出工程最佳实践:头文件禁用using,源文件精确引入,并介绍匿名命名空间、别名和内联命名空间等进阶用法。掌握命名空间的关键在于理解其作为工

2026-01-19 16:46:41 302

原创 双指针(下)

本文介绍了两种双指针算法解决求和问题。第一部分讲解"和为s的两个数字"问题,对比了暴力解法(O(n²))和双指针解法(O(n))的优劣。双指针法通过左右指针向中间移动,利用数组有序性快速定位目标组合。第二部分将思路扩展至"四数之和"问题,核心仍是通过排序+双指针降低复杂度。两种方法体现了算法设计中暴力穷举与优化策略的差异,强调应根据问题特性选择合适解法,在时间复杂度、空间复杂度和实现复杂度间取得平衡。双指针法适用于有序数组场景,能高效处理大规模数据。

2025-10-31 14:07:26 828

原创 双指针(中)

本文介绍了两个双指针算法的经典应用。第一个是快乐数问题,通过快慢指针判断数字平方和计算是否进入1的循环或非1循环,时间复杂度O(logn)。第二个是盛水容器问题,使用左右指针从两端向中间移动,每次移动较矮的一侧以寻找最大容量,时间复杂度O(n)。两种方法都避免了暴力解法的高时间复杂度,展示了双指针算法在特定问题中的高效性和巧妙性。

2025-09-22 22:03:24 847

原创 双指针(上)

本文介绍了双指针算法的两种常见形式:对撞指针和快慢指针。对撞指针从两端向中间移动,用于顺序结构;快慢指针则通过不同移动速度处理环形结构或循环问题。

2025-09-20 17:21:44 705

原创 第一节:算法复杂度

本文介绍了数据结构与算法的基础概念,重点讲解了算法复杂度分析。数据结构研究数据的逻辑结构、存储结构和运算操作,旨在高效组织处理数据。算法是解决问题的明确步骤序列,其效率通过时间复杂度和空间复杂度来衡量。时间复杂度描述算法执行时间随输入规模的增长趋势,空间复杂度则反映内存消耗的增长趋势。文章通过多个代码示例详细说明了如何计算常见算法的时间复杂度,包括线性(O(n))、对数(O(log n))等不同复杂度等级。复杂度分析是评估算法性能的关键,能帮助开发者在大数据量场景下选择最优解决方案。

2025-09-19 12:33:33 791 1

原创 第三讲:工程模板的建立

第三讲:工程模板建立

2025-04-20 18:52:13 1018

原创 第二讲:任务调度器

第二讲:任务调度器

2025-04-20 12:16:14 1088 1

原创 第一讲:蓝桥杯过度

西门子工业嵌入式开发:蓝桥杯单片机的过度

2025-04-20 09:29:03 1086

空空如也

空空如也

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

TA关注的人

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