<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[zz02_24的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/zz02_24</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; zz02_24]]></copyright><item><title><![CDATA[C++ 内存管理]]></title><link>https://blog.csdn.net/zz02_24/article/details/157069430</link><guid>https://blog.csdn.net/zz02_24/article/details/157069430</guid><author>zz02_24</author><pubDate>Sat, 17 Jan 2026 22:35:22 +0800</pubDate><description><![CDATA[摘要：本文介绍了C/C++程序的内存区域划分和动态内存管理机制。内存分为内核空间、栈、堆、数据段和代码段等区域。C语言通过malloc/calloc/realloc/free函数管理堆内存，而C++的new/delete操作符还能处理对象构造和析构。详细解析了operator new/delete的实现原理，以及定位new表达式在内存池中的应用。对于自定义类型，new/delete会调用构造/析构函数，这是与malloc/free的主要区别。文章还介绍了内存管理的底层实现机制和重载方法。]]></description><category></category></item><item><title><![CDATA[C语言指针进阶]]></title><link>https://blog.csdn.net/zz02_24/article/details/157042512</link><guid>https://blog.csdn.net/zz02_24/article/details/157042512</guid><author>zz02_24</author><pubDate>Sat, 17 Jan 2026 17:59:02 +0800</pubDate><description><![CDATA[本文介绍了C语言中指针的高级应用：1.字符指针可指向字符变量或字符串常量；2.指针数组是元素为指针的数组；3.数组指针指向整个数组，与普通指针在运算时有区别；4.数组传参时一维数组可用数组或指针形式，二维数组需指定列数或用数组指针；5.函数指针存储函数地址，可通过两种方式调用函数。文中还强调了数组名与取数组地址的区别，以及指针在内存访问中的特性。这些概念对理解C语言内存管理和函数调用机制至关重要。]]></description><category></category></item><item><title><![CDATA[C++ 类和对象（完）]]></title><link>https://blog.csdn.net/zz02_24/article/details/157034567</link><guid>https://blog.csdn.net/zz02_24/article/details/157034567</guid><author>zz02_24</author><pubDate>Fri, 16 Jan 2026 23:00:44 +0800</pubDate><description><![CDATA[本文探讨了C++中构造函数的初始化方式、静态成员、友元和内部类等特性。构造函数推荐使用初始化列表，尤其对于引用、const成员和自定义类型；explicit关键字可防止隐式转换。静态成员属于类而非对象，需在类外定义，静态函数无this指针。友元函数和友元类可突破封装访问私有成员，但会破坏封装性。内部类是独立类，天生是外部类的友元，可直接访问外部类的静态和私有成员。这些特性在提高代码灵活性的同时，也需谨慎使用以保持良好封装。]]></description><category></category></item><item><title><![CDATA[C++ 类与对象(二)]]></title><link>https://blog.csdn.net/zz02_24/article/details/157003080</link><guid>https://blog.csdn.net/zz02_24/article/details/157003080</guid><author>zz02_24</author><pubDate>Fri, 16 Jan 2026 09:00:00 +0800</pubDate><description><![CDATA[C++编译器会为空的类自动生成6个默认成员函数，包括构造函数、析构函数、拷贝构造函数、赋值运算符重载以及取地址重载函数。构造函数用于初始化对象，析构函数负责资源清理，拷贝构造函数实现对象复制，赋值运算符重载处理对象赋值。其中，拷贝构造函数必须使用引用参数以避免无限递归。const成员函数通过修饰this指针保证不修改对象状态。这些默认函数对内置类型和自定义类型有不同的处理方式，开发者应根据需要选择是否显式实现这些函数，特别是涉及资源管理时需要特别注意深拷贝问题。]]></description><category></category></item><item><title><![CDATA[C++类与对象（一）]]></title><link>https://blog.csdn.net/zz02_24/article/details/156908355</link><guid>https://blog.csdn.net/zz02_24/article/details/156908355</guid><author>zz02_24</author><pubDate>Fri, 16 Jan 2026 02:57:29 +0800</pubDate><description><![CDATA[本文对比了C语言（面向过程）与C++（面向对象）的核心差异，重点介绍了C++类的特性。面向过程关注解决问题的步骤，而面向对象通过对象交互完成任务。文章详细讲解了类的定义方式（struct到class的演进）、访问限定符（public/protected/private）及封装特性。同时阐述了类的作用域、实例化过程以及对象内存模型（仅成员变量占用空间，空类占1字节）。最后深入解析this指针的原理及其特性，通过实例说明空指针调用成员函数时的不同表现。这些内容构成了C++面向对象编程的基础知识体系。]]></description><category></category></item><item><title><![CDATA[Linux指令和权限]]></title><link>https://blog.csdn.net/zz02_24/article/details/156955065</link><guid>https://blog.csdn.net/zz02_24/article/details/156955065</guid><author>zz02_24</author><pubDate>Wed, 14 Jan 2026 22:50:09 +0800</pubDate><description><![CDATA[本文介绍了Linux系统常用命令及权限管理。基础操作包括：目录查看(ls)、路径切换(cd)、文件创建(touch)与删除(rm)、复制移动(cp/mv)；文件内容查看工具(cat/less/head/tail)；时间(date)、帮助(man)等辅助命令。重点讲解了权限系统：文件属性(-rwxr-xr--)、用户角色(root/普通用户)、权限修改(chmod/chown)方法，特别说明目录写权限的特殊性及粘滞位(+t)的作用。同时涉及查找命令(find/grep)和默认权限计算(umask)机制。全文系]]></description><category></category></item><item><title><![CDATA[C语言数据存储]]></title><link>https://blog.csdn.net/zz02_24/article/details/156756927</link><guid>https://blog.csdn.net/zz02_24/article/details/156756927</guid><author>zz02_24</author><pubDate>Fri, 09 Jan 2026 20:50:58 +0800</pubDate><description><![CDATA[摘要：C语言数据类型包括整型(char,short,int等)、浮点型(float,double)、构造类型(数组,结构体等)、指针类型和空类型(void)。整型采用补码存储，便于统一处理符号位和加减运算。数据存储涉及大小端模式：大端高位在前，小端低位在前(如x86)。浮点数遵循IEEE754标准，存储符号位S、有效数字M(隐含首位1)和指数E(需加偏置值)。32位float为1+8+23位，64位double为1+11+52位。]]></description><category></category></item><item><title><![CDATA[C++ 入门知识点]]></title><link>https://blog.csdn.net/zz02_24/article/details/156613443</link><guid>https://blog.csdn.net/zz02_24/article/details/156613443</guid><author>zz02_24</author><pubDate>Tue, 06 Jan 2026 16:39:06 +0800</pubDate><description><![CDATA[C++相较于C语言新增了31个关键字，总数达63个，主要用于支持面向对象、泛型编程等特性。关键改进包括：命名空间解决命名冲突；更安全的输入输出机制；缺省参数和函数重载提升灵活性；引用作为安全别名替代指针；内联函数优化性能；auto关键字简化类型声明；基于范围的for循环增强迭代；nullptr明确空指针语义。这些特性使C++在保持C兼容性的同时，显著提升了代码安全性、可读性和开发效率，特别适用于大型软件开发。]]></description><category></category></item><item><title><![CDATA[C语言结构体]]></title><link>https://blog.csdn.net/zz02_24/article/details/156573891</link><guid>https://blog.csdn.net/zz02_24/article/details/156573891</guid><author>zz02_24</author><pubDate>Mon, 05 Jan 2026 21:01:25 +0800</pubDate><description><![CDATA[本文介绍了结构体的基础知识与使用方法。主要内容包括：1）结构体声明语法及注意事项；2）变量的两种定义方式和初始化方法（普通初始化和嵌套初始化）；3）结构体成员的访问方式（点操作符和箭头操作符）；4）结构体传参时的注意事项，强调在处理大型结构体时应优先使用传址方式而非传值，以减小系统开销提升性能。文章系统性地讲解了结构体的基本概念、定义初始化、成员访问和传参优化等核心知识点。]]></description><category></category></item><item><title><![CDATA[C语言指针]]></title><link>https://blog.csdn.net/zz02_24/article/details/156572216</link><guid>https://blog.csdn.net/zz02_24/article/details/156572216</guid><author>zz02_24</author><pubDate>Mon, 05 Jan 2026 18:21:19 +0800</pubDate><description><![CDATA[本文系统介绍了指针的核心概念与应用。首先明确了指针的本质是内存地址，其大小随机器位数变化（32位4字节，64位8字节）。其次详细解析了指针类型的两大意义：决定解引用访问的字节数和指针运算的步长。接着探讨了野指针的成因及防范措施，并阐述了指针与数组的密切关系（数组名即首元素地址）。此外，还介绍了二级指针的概念和指针数组的定义。全文通过清晰的逻辑结构，全面呈现了指针在内存操作中的关键作用和使用规范。]]></description><category></category></item><item><title><![CDATA[C语言操作符]]></title><link>https://blog.csdn.net/zz02_24/article/details/156569004</link><guid>https://blog.csdn.net/zz02_24/article/details/156569004</guid><author>zz02_24</author><pubDate>Mon, 05 Jan 2026 14:16:34 +0800</pubDate><description><![CDATA[本文总结了C语言中各类操作符的使用规则和注意事项，包括算术、移位、位、赋值、单目、关系、逻辑等操作符。重点介绍了除法/取模规则、移位操作类型、位操作应用、复合赋值、自增自减顺序、关系判断陷阱、逻辑短路特性等关键知识点。同时讲解了表达式求值中的整型提升、算术转换原则，以及操作符的优先级和结合性。特别强调要避免未定义行为，如负移位、复杂表达式求值顺序等问题。这些操作符规则是C语言编程的基础，正确理解对编写可靠代码至关重要。]]></description><category></category></item><item><title><![CDATA[C语言数组]]></title><link>https://blog.csdn.net/zz02_24/article/details/156567921</link><guid>https://blog.csdn.net/zz02_24/article/details/156567921</guid><author>zz02_24</author><pubDate>Sun, 04 Jan 2026 18:45:00 +0800</pubDate><description><![CDATA[【代码】C语言数组。]]></description><category></category></item><item><title><![CDATA[C语言函数]]></title><link>https://blog.csdn.net/zz02_24/article/details/156567274</link><guid>https://blog.csdn.net/zz02_24/article/details/156567274</guid><author>zz02_24</author><pubDate>Sun, 04 Jan 2026 14:18:28 +0800</pubDate><description><![CDATA[摘要：函数是完成特定任务的独立代码块，分为库函数和自定义函数。库函数通过头文件调用，自定义函数由程序员编写。函数参数包括实参和形参，形参是实参的临时拷贝。函数调用有传值和传址两种方式。函数可嵌套调用但不能嵌套定义，支持链式访问。函数需先声明后定义，递归函数需有终止条件，但效率可能低于迭代。]]></description><category></category></item><item><title><![CDATA[C语言分支与循环]]></title><link>https://blog.csdn.net/zz02_24/article/details/156548717</link><guid>https://blog.csdn.net/zz02_24/article/details/156548717</guid><author>zz02_24</author><pubDate>Sun, 04 Jan 2026 00:38:51 +0800</pubDate><description><![CDATA[摘要：C语言控制语句分为分支(if/switch)、循环(while/for/do-while)和转向(break/goto等)三类。if语句需注意else匹配最近if的规则；switch要求整型表达式且必须用break避免穿透。三种循环中for最常用，将初始化、判断和调整集中处理。break终止整个循环，continue跳过本次循环。goto可用于跳出多层嵌套循环。C语言中0为假，非0为真，这是判断语句的基础逻辑。]]></description><category></category></item><item><title><![CDATA[【C++】初阶模板]]></title><link>https://blog.csdn.net/zz02_24/article/details/134814617</link><guid>https://blog.csdn.net/zz02_24/article/details/134814617</guid><author>zz02_24</author><pubDate>Tue, 05 Dec 2023 19:38:38 +0800</pubDate><description><![CDATA[当我们要实现一个交换函数的时候，以我们现在的水平要实现一个很简单，但是我们是实现的函数仅仅可以对对指定类型进行交换，假设我们要实现一个int类型，我们就要写一个支持int类型更换的函数，只要类型一换我们就要重新写一个，而且重新写一个的底层逻辑基本是一样，这样就会造成我们的代码很冗余。而今天我们要讲的内容就很好的解决了这个问题——模板。]]></description><category></category></item><item><title><![CDATA[【C++】C/C++内存管理]]></title><link>https://blog.csdn.net/zz02_24/article/details/133660539</link><guid>https://blog.csdn.net/zz02_24/article/details/133660539</guid><author>zz02_24</author><pubDate>Mon, 04 Dec 2023 20:16:07 +0800</pubDate><description><![CDATA[①调用operator new函数申请空间；②在申请空间上执行构造函数，完成对象构造。①在空间上执行析构函数，完成对象资源清理工作；②调用operator delete函数释放空间。①调用operator new[]函数申请空间，operator new[]中实际调用operator new函数完成N个对象空间的申请；②实际调用了N次构造函数。①在释放的对象空间上执行N次析构函数，完成N个对象中资源的清理；]]></description><category></category></item><item><title><![CDATA[【C++】类和对象（下）]]></title><link>https://blog.csdn.net/zz02_24/article/details/132956581</link><guid>https://blog.csdn.net/zz02_24/article/details/132956581</guid><author>zz02_24</author><pubDate>Mon, 18 Sep 2023 00:27:46 +0800</pubDate><description><![CDATA[前面两篇文章我们一共讲述了类和对象的六个默认成员函数，这篇文章我们将接着继续讲。]]></description><category></category></item><item><title><![CDATA[【C++】类和对象（中下）]]></title><link>https://blog.csdn.net/zz02_24/article/details/132911016</link><guid>https://blog.csdn.net/zz02_24/article/details/132911016</guid><author>zz02_24</author><pubDate>Fri, 15 Sep 2023 23:22:56 +0800</pubDate><description><![CDATA[文章到这，我们关于类的六个默认成员函数已经介绍完了，也是构造函数，析构函数，拷贝构造函数，赋值运算符重载，const成员函数，取地址及const取地址操作符重载。]]></description><category></category></item><item><title><![CDATA[【数据结构】堆的应用——Top-K]]></title><link>https://blog.csdn.net/zz02_24/article/details/131744385</link><guid>https://blog.csdn.net/zz02_24/article/details/131744385</guid><author>zz02_24</author><pubDate>Sun, 16 Jul 2023 00:20:06 +0800</pubDate><description><![CDATA[上篇文章我们学习了二叉树的顺序存储结构，并且对于实际使用中所常用的顺序存储结构——堆的各个接口进行实现。这篇文章我们将对堆的实际应用进行更加深入的研究。到这里，我们今天关于Topk问题的研究就全部结束了，难度不大，最主要是结合具体情况，选择最合适的方法建堆。]]></description><category></category></item><item><title><![CDATA[【数据结构】树与二叉树（中）]]></title><link>https://blog.csdn.net/zz02_24/article/details/131722775</link><guid>https://blog.csdn.net/zz02_24/article/details/131722775</guid><author>zz02_24</author><pubDate>Fri, 14 Jul 2023 16:24:20 +0800</pubDate><description><![CDATA[上篇文章中，我们认识了树与二叉树相关概念以及两种常见的存储结构，而今天我们将对顺序存储结构进行实现的讲解。这篇文章我们完整的认识、了解、学习了二叉树顺序存储结构的相关知识，并且对二叉树顺序存储进行实现——堆的各接口实现。至此，关于二叉树的顺序存储的知识我们就全部学习完毕了。]]></description><category></category></item></channel></rss>