<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[hy20060720的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/hy20060720</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; hy20060720]]></copyright><item><title><![CDATA[C++类和对象（下）]]></title><link>https://blog.youkuaiyun.com/hy20060720/article/details/157767306</link><guid>https://blog.youkuaiyun.com/hy20060720/article/details/157767306</guid><author>hy20060720</author><pubDate>Thu, 05 Feb 2026 15:21:35 +0800</pubDate><description><![CDATA[本文系统讲解了C++面向对象编程的进阶特性：1.构造函数初始化列表的规则与应用，包括必须初始化的成员类型和初始化顺序；2.隐式类型转换的条件及explicit关键字的作用；3.static成员的声明、初始化和访问方式；4.友元函数和友元类的定义与使用；5.内部类的特性及其与外部类的关系；6.匿名对象的生命周期和使用场景；7.编译器对对象拷贝的优化机制。通过示例代码详细说明了各特性的实现方式和使用注意事项，为C++面向对象编程提供了实用指导。]]></description><category></category></item><item><title><![CDATA[C++类和对象（中）]]></title><link>https://blog.youkuaiyun.com/hy20060720/article/details/157129721</link><guid>https://blog.youkuaiyun.com/hy20060720/article/details/157129721</guid><author>hy20060720</author><pubDate>Mon, 19 Jan 2026 11:32:23 +0800</pubDate><description><![CDATA[本文系统介绍了C++类的默认成员函数及其核心特性，主要包括： 构造函数与析构函数 构造函数用于对象初始化，支持重载，分为无参构造、带参构造和全缺省构造 析构函数用于资源清理，不可重载，自动调用机制避免了C语言中手动释放资源的问题 拷贝控制成员 拷贝构造函数实现对象初始化时的深拷贝 赋值运算符重载处理对象间的赋值操作，需考虑自赋值情况 编译器默认生成的拷贝控制函数的行为分析 运算符重载 包括关系运算符、算术运算符、自增自减运算符的重载规则 流插入(&lt;&lt;)和流提取(&gt;&gt;)运算符的特殊实现]]></description><category></category></item><item><title><![CDATA[C++类和对象（上）]]></title><link>https://blog.youkuaiyun.com/hy20060720/article/details/157021648</link><guid>https://blog.youkuaiyun.com/hy20060720/article/details/157021648</guid><author>hy20060720</author><pubDate>Fri, 16 Jan 2026 11:41:23 +0800</pubDate><description><![CDATA[本文系统介绍了C++中类和对象的核心概念。主要内容包括：1）类的定义方式（class/struct）及其访问限定符（public/private/protected）的作用；2）类的实例化过程，对象内存分配规则及大小计算方法；3）this指针的原理与特性，以及其在成员函数中的关键作用；4）通过Stack实现对比展示了C++面向对象封装特性相较于C语言的优势。核心要点是：类作为抽象模板通过访问控制实现封装，实例化对象时才分配内存，成员函数通过隐含的this指针区分不同对象。这些机制共同构成了C++面向对象编程]]></description><category></category></item><item><title><![CDATA[C++入门基础（初阶）]]></title><link>https://blog.youkuaiyun.com/hy20060720/article/details/156892472</link><guid>https://blog.youkuaiyun.com/hy20060720/article/details/156892472</guid><author>hy20060720</author><pubDate>Tue, 13 Jan 2026 13:46:54 +0800</pubDate><description><![CDATA[本文全面介绍了C++语言的核心特性和发展历程。首先概述了C++从1979年诞生至今的版本演进，重点分析了各版本新增特性。随后详细讲解了C++的重要语法特性，包括命名空间、输入输出、缺省参数、函数重载、引用、内联函数和nullptr等。文章还提供了C++的应用领域分析、学习建议和经典书籍推荐，并通过丰富代码示例演示了各特性的具体用法。最后对比了指针与引用的区别，总结了C++在系统开发、游戏引擎、嵌入式等领域的核心优势。全文系统性地梳理了C++的关键知识点，为学习者提供了全面的语言参考。]]></description><category></category></item><item><title><![CDATA[软件设计师知识点总结：面向对象技术（设计模式）]]></title><link>https://blog.youkuaiyun.com/hy20060720/article/details/154135835</link><guid>https://blog.youkuaiyun.com/hy20060720/article/details/154135835</guid><author>hy20060720</author><pubDate>Thu, 30 Oct 2025 20:28:00 +0800</pubDate><description><![CDATA[本文系统介绍了23种设计模式及其分类，包括创建型、结构型和行为型三大类。创建型模式如工厂方法、抽象工厂、单例模式等，关注对象创建机制；结构型模式如适配器、装饰器、代理模式等，处理类与对象的组合；行为型模式如观察者、策略、状态模式等，侧重对象间的交互与职责分配。每种模式都包含定义、结构图示、代码示例和适用场景说明，帮助开发者理解其核心思想和应用方式。这些模式为解决特定软件设计问题提供了可复用的解决方案，能有效提高代码的可维护性、扩展性和复用性。]]></description><category></category></item><item><title><![CDATA[软件设计师知识点总结：面向对象技术（面向对象基础+UML）]]></title><link>https://blog.youkuaiyun.com/hy20060720/article/details/154031097</link><guid>https://blog.youkuaiyun.com/hy20060720/article/details/154031097</guid><author>hy20060720</author><pubDate>Wed, 29 Oct 2025 19:23:40 +0800</pubDate><description><![CDATA[摘要：本文系统介绍了面向对象编程基础和UML建模语言。面向对象部分涵盖核心概念（对象、类、继承、多态等）、分析设计方法（OOA/OOD/OOP/OOT）以及设计原则。UML部分详细阐述了其三大要素（事物、关系、图），重点解析了9种核心图的特性与适用场景：4种静态图（类图、对象图、用例图、构件图）展示系统结构，5种动态图（序列图、通信图、状态图、活动图、部署图）描述系统行为。文章为面向对象系统分析和设计提供了全面的理论框架与实践指导。]]></description><category></category></item><item><title><![CDATA[软件设计师知识点总结：算法设计与分析]]></title><link>https://blog.youkuaiyun.com/hy20060720/article/details/153925574</link><guid>https://blog.youkuaiyun.com/hy20060720/article/details/153925574</guid><author>hy20060720</author><pubDate>Mon, 27 Oct 2025 17:46:53 +0800</pubDate><description><![CDATA[本文系统介绍了四大经典算法设计与分析范式：回溯法、分治法、动态规划和贪心法。回溯法通过试错和剪枝解决N皇后问题；分治法采用&quot;分治合&quot;策略处理最大子段和与归并排序问题；动态规划利用子问题解存储优化0-1背包和矩阵连乘问题；贪心法基于局部最优选择解决部分背包问题。通过对比各算法的时间/空间复杂度及适用场景，揭示了不同问题特征下算法选择的权衡依据，为算法设计与优化提供了系统化思路。]]></description><category></category></item><item><title><![CDATA[软件设计师知识点总结：结构化开发]]></title><link>https://blog.youkuaiyun.com/hy20060720/article/details/153920193</link><guid>https://blog.youkuaiyun.com/hy20060720/article/details/153920193</guid><author>hy20060720</author><pubDate>Sun, 26 Oct 2025 13:21:04 +0800</pubDate><description><![CDATA[本文系统介绍了信息系统开发与维护的关键环节。主要内容包括：1）系统分析与设计原理，涵盖模块化、内聚耦合等核心概念；2）Web应用分析与设计方法，包括需求模型和MVC架构；3）软件需求工程流程，从获取到验证管理；4）结构化分析方法，重点讲解数据流图绘制规范；5）软件测试策略，包括各类测试方法和用例设计技术；6）系统转换与维护方案，比较不同转换方式的优劣。全文以系统工程视角，详细阐述了从需求分析到系统维护的全生命周期管理方法，为信息系统开发提供了系统的理论指导和实践框架。]]></description><category></category></item><item><title><![CDATA[软件设计师知识点总结：软件工程]]></title><link>https://blog.youkuaiyun.com/hy20060720/article/details/153874461</link><guid>https://blog.youkuaiyun.com/hy20060720/article/details/153874461</guid><author>hy20060720</author><pubDate>Sat, 25 Oct 2025 18:52:30 +0800</pubDate><description><![CDATA[本文系统介绍了软件工程的核心内容，包括基本概念、过程模型、开发方法、测试维护及项目管理等。主要内容为：1.软件工程基础：阐述基本原理、要素和生存周期；2.过程模型：分析瀑布、V型、原型、螺旋等多种模型的特点及适用场景；3.开发方法：对比结构化、面向对象及敏捷开发方法；4.测试与维护：讲解测试策略、方法及维护要点；5.项目管理：涵盖估算、进度、风险及质量管理；6.工具与环境：介绍支持软件开发的各类工具。全文系统梳理了软件工程全生命周期的关键环节，为软件开发实践提供了理论指导和方法参考。]]></description><category></category></item><item><title><![CDATA[软件设计师知识点总结：操作系统]]></title><link>https://blog.youkuaiyun.com/hy20060720/article/details/153746016</link><guid>https://blog.youkuaiyun.com/hy20060720/article/details/153746016</guid><author>hy20060720</author><pubDate>Thu, 23 Oct 2025 16:50:09 +0800</pubDate><description><![CDATA[本文系统介绍了操作系统的基本概念与核心功能。首先概述了操作系统的资源管理、人机界面等作用，以及并发性、共享性等特征，详细阐述了进程管理、存储管理等五大功能模块。重点分析了进程管理的三态转换、同步互斥、死锁条件与解决方法；存储管理的页式、段式和段页式结构及地址转换机制；设备管理的分类、I/O层次结构和磁盘调度算法；文件管理的索引结构、目录组织和空闲空间管理方法。全文通过丰富的实例和图表，深入浅出地讲解了操作系统的工作原理和关键技术，为读者构建了完整的操作系统知识体系框架。]]></description><category></category></item><item><title><![CDATA[软件设计师知识点总结：数据结构与算法（超级详细）]]></title><link>https://blog.youkuaiyun.com/hy20060720/article/details/153646536</link><guid>https://blog.youkuaiyun.com/hy20060720/article/details/153646536</guid><author>hy20060720</author><pubDate>Wed, 22 Oct 2025 14:52:48 +0800</pubDate><description><![CDATA[本文系统梳理了数据结构与算法核心知识点，涵盖线性结构、树、图、排序与查找算法。主要内容包括：1.数据结构三要素（逻辑结构、存储结构、运算）和算法复杂度分析（时间/空间复杂度）；2.线性结构（顺序表、链表、栈、队列）的实现与操作；3.树结构（二叉树、哈夫曼树）的性质与遍历；4.图的存储（邻接矩阵/表）与遍历（DFS/BFS）；5.经典排序算法（插入、交换、选择、归并类）的原理与实现；6.查找算法（顺序、二分、哈希）的适用场景。重点解析了快速排序、堆排序等核心算法的实现细节与优化策略]]></description><category></category></item><item><title><![CDATA[软件设计师知识点总结：程序设计语言基础]]></title><link>https://blog.youkuaiyun.com/hy20060720/article/details/153642556</link><guid>https://blog.youkuaiyun.com/hy20060720/article/details/153642556</guid><author>hy20060720</author><pubDate>Mon, 20 Oct 2025 19:38:54 +0800</pubDate><description><![CDATA[本文系统介绍了程序设计语言的基本概念和编译原理。主要内容包括：1.编程语言分类（低级/高级语言）及特点；2.编译与解释的区别及翻译过程（词法、语法、语义分析等）；3.正规表达式与有限自动机理论；4.上下文无关文法和中缀/后缀表达式转换；5.文法定义及类型划分（0-3型）。文章通过结构化方式阐述了编程语言的核心知识体系，涵盖了从基础概念到编译原理的关键内容，为理解程序设计语言提供了系统性的知识框架。]]></description><category></category></item><item><title><![CDATA[软件设计师知识点总结：计算机系统基础知识]]></title><link>https://blog.youkuaiyun.com/hy20060720/article/details/153583112</link><guid>https://blog.youkuaiyun.com/hy20060720/article/details/153583112</guid><author>hy20060720</author><pubDate>Sun, 19 Oct 2025 21:32:17 +0800</pubDate><description><![CDATA[本文系统介绍了计算机硬件组成与数据表示的核心知识。主要内容包括：1）计算机硬件系统由CPU、存储器（内存/外存）和外部设备（输入/输出）构成，重点解析了CPU的运算器和控制器功能模块；2）数据表示方法涵盖基本单位、进制转换、原码/补码/移码表示及浮点数存储格式；3）存储器分类与特性，包括Cache映射方式、虚拟存储器和外存技术；4）输入输出技术比较，如程序控制、中断和DMA方式；5）总线结构与加密认证技术基础。这些内容构成了计算机系统硬件架构的基础知识体系。]]></description><category></category></item><item><title><![CDATA[C语言指针终极大考：sizeof 与 strlen 混战，笔试题拆解攻略]]></title><link>https://blog.youkuaiyun.com/hy20060720/article/details/153526256</link><guid>https://blog.youkuaiyun.com/hy20060720/article/details/153526256</guid><author>hy20060720</author><pubDate>Sun, 19 Oct 2025 13:19:43 +0800</pubDate><description><![CDATA[本文深入解析C语言指针相关笔试题中的核心难点，重点区分sizeof和strlen的本质差异，拆解数组名的双重含义，并通过典型题目剖析指针运算规律。主要内容包括：sizeof作为操作符计算内存大小，而strlen作为函数统计到'\0'前的字符个数；一维数组名在sizeof和&amp;操作时代表整个数组，其他情况为首元素地址；二维数组名代表首行地址，指针运算需考虑类型偏移；通过7道经典指针运算题，展示数组地址加减、结构体偏移、多维指针嵌套等复杂场景的解题思路。掌握数组名规则、指针类型决定偏移量]]></description><category></category></item><item><title><![CDATA[C语言指针详解（4）：“回调函数” + “qsort函数”，用指针写 “万能排序工具”（一篇带你彻底搞定qsort与回调函数）]]></title><link>https://blog.youkuaiyun.com/hy20060720/article/details/153519432</link><guid>https://blog.youkuaiyun.com/hy20060720/article/details/153519432</guid><author>hy20060720</author><pubDate>Sat, 18 Oct 2025 14:21:32 +0800</pubDate><description><![CDATA[本文深入讲解了C语言中回调函数和qsort排序的工程级应用。首先通过&quot;外卖备注&quot;的比喻解释了回调函数的原理，并展示了如何用回调函数优化计算器代码，消除冗余。接着详细解析了qsort函数的四个参数，重点讲解了compar回调函数的实现规则和避坑指南。文章通过三个实战场景（int数组、字符串数组、结构体数组）演示了qsort的具体用法，并模拟实现了qsort的底层逻辑，揭示了其通用排序的奥秘（通过char*按字节访问和交换）。最后总结了回调函数和qsort的核心要点，帮助读者掌握这些指针技巧]]></description><category></category></item><item><title><![CDATA[C语言指针详解（3）：从“字符指针”到“数组指针“再看“函数指针“，带你解锁指针的 “隐藏技能”（指针最强保姆教程）]]></title><link>https://blog.youkuaiyun.com/hy20060720/article/details/153409153</link><guid>https://blog.youkuaiyun.com/hy20060720/article/details/153409153</guid><author>hy20060720</author><pubDate>Thu, 16 Oct 2025 18:49:44 +0800</pubDate><description><![CDATA[/ 定义函数指针pf：指向返回int、参数为两个int的函数// 也可以写成int (*pf)(int x, int y) = &Add;（参数名可省）// 通过函数指针调用函数，两种写法都可以// 解引用调用，返回5// 直接调用，返回8（更简洁）return 0;函数指针的类型是int：指向函数的返回类型；(*pf)：pf 是函数指针变量名；(int, int)：指向函数的参数类型和个数。]]></description><category></category></item><item><title><![CDATA[C语言指针详解（2）：从”数组名“到”二级指针“，彻底搞懂指针与数组的 “爱恨情仇”（指针最强保姆教程）]]></title><link>https://blog.youkuaiyun.com/hy20060720/article/details/153210382</link><guid>https://blog.youkuaiyun.com/hy20060720/article/details/153210382</guid><author>hy20060720</author><pubDate>Wed, 15 Oct 2025 17:07:25 +0800</pubDate><description><![CDATA[本文深入解析了C语言中指针与数组的复杂关系，重点内容包括：1.数组名的三重身份：常规使用时为首元素地址，sizeof时代表整个数组大小，&amp;数组名时获取整个数组地址；2.指针访问数组的本质：arr[i]等价于*(arr+i)，指针变量也可使用下标；3.数组传参的真相：函数接收的数组参数实际是指针，需额外传递数组大小；4.二级指针原理：存储指针变量的地址，通过*和**进行多级访问；5.指针数组应用：可模拟二维数组结构。文章通过快递柜等生动比喻和代码示例，帮助读者理解这些关键概念，并提供了冒泡排序实现]]></description><category></category></item><item><title><![CDATA[C 语言指针详解（1）：从”内存地址“到”实战运算“，一篇搞定指针所有核心！（指针最强保姆教程）]]></title><link>https://blog.youkuaiyun.com/hy20060720/article/details/153069772</link><guid>https://blog.youkuaiyun.com/hy20060720/article/details/153069772</guid><author>hy20060720</author><pubDate>Sat, 11 Oct 2025 21:35:03 +0800</pubDate><description><![CDATA[本文深入浅出地讲解了C语言指针的核心概念与实用技巧。主要内容包括：1.内存与地址基础：将内存比作宿舍楼，地址是门牌号，指针即为地址的别名；2.指针变量操作：介绍取地址(&amp;)、解引用()等运算符，以及指针变量在不同平台的大小特点；3.指针类型重要性：说明类型决定解引用权限和加减步长，分析void指针的特殊性；4.安全使用技巧：讲解const修饰、规避野指针的方法，以及assert断言的调试应用；5.实战应用：通过变量交换示例展示传址调用的优势。全文采用生活化比喻，将抽象概念具象化，帮助读者系统掌握指针]]></description><category></category></item><item><title><![CDATA[C 语言操作符：从 “二进制玩梗” 到 “表达式避坑”，一篇搞定所有花活！]]></title><link>https://blog.youkuaiyun.com/hy20060720/article/details/152791261</link><guid>https://blog.youkuaiyun.com/hy20060720/article/details/152791261</guid><author>hy20060720</author><pubDate>Thu, 09 Oct 2025 16:45:35 +0800</pubDate><description><![CDATA[本文系统讲解了C语言操作符的使用技巧与避坑指南。主要内容包括：1.操作符分类：详细介绍了算术、移位、位操作、赋值等7类操作符的功能类比；2.二进制基础：重点讲解进制转换和原码/反码/补码原理；3.硬核操作符：深入解析移位操作符和位操作符的使用场景及优化技巧；4.常用操作符：单目、赋值、逗号表达式的正确用法；5.避坑指南：强调操作符优先级、整型提升和问题表达式的注意事项。文章通过大量代码示例，帮助程序员掌握操作符的底层原理和高效用法，避免常见错误。]]></description><category></category></item><item><title><![CDATA[C语言递归—函数界的“套娃大师”，带你轻松搞定青蛙跳台阶 & 汉诺塔]]></title><link>https://blog.youkuaiyun.com/hy20060720/article/details/152612406</link><guid>https://blog.youkuaiyun.com/hy20060720/article/details/152612406</guid><author>hy20060720</author><pubDate>Mon, 06 Oct 2025 23:54:28 +0800</pubDate><description><![CDATA[本文系统讲解了C语言中的递归概念与应用。首先介绍了递归的基本定义和两个必要条件：终止条件和问题规模递减。然后通过阶乘计算、整数位打印等实例演示递归实现方法，并分析递归调用过程。针对递归的局限性，文章对比了递归与迭代的适用场景，特别指出斐波那契数列等问题的递归效率问题。最后拓展了青蛙跳台阶和汉诺塔两个经典递归案例，总结出递归解题的三步法：找终止条件、拆解递推关系、编写递归函数。全文通过丰富实例和图示，帮助读者掌握递归思维及实现技巧。]]></description><category></category></item></channel></rss>