- 博客(10)
- 收藏
- 关注
原创 C++ 核心进阶:继承详解——从基础语法到菱形继承与虚继承
在 C++ 面向对象中,继承(Inheritance)是实现代码复用的重要机制之一。继承允许我们在一个已经存在的类的基础上继续扩展新的属性和成员函数,从而得到新的类。原来的类称为基类 / 父类新得到的类称为派生类 / 子类简单来说:函数可以实现函数级别的代码复用,而继承则实现了类设计层面的代码复用。例如Student和Teacher都具有姓名、年龄、地址、电话等共同属性。如果分别写在两个类中,就会产生大量重复代码。我们可以将这些公共成员抽取到Person类中,再让Student和Teacher。
2026-09-26 22:52:18
285
原创 【C++ 核心进阶】类和对象(下):从初始化列表、友元、内部类到编译器拷贝优化全解析
【C++ 核心进阶】类和对象(下):从初始化列表、友元、内部类到编译器拷贝优化全解析
2026-08-17 05:51:53
697
原创 【C++ 核心进阶】类和对象(中):6 大默认成员函数与运算符重载全方位深度剖析
C++ 核心进阶】类和对象(中):6 大默认成员函数与运算符重载全方位深度剖析
2026-08-15 03:25:06
604
1
原创 【C++ 核心进阶】类和对象(上):类域封装、内存对齐规则与 this 指针空指针陷阱
【C++ 核心进阶】类和对象(中):类域封装、内存对齐规则与 this 指针空指针陷阱
2026-08-10 23:40:44
332
原创 顺序表、链表oj题目分析(来源力扣、牛客)
如果按正常思路:先定义一个左右指针,指向顺序表下标为0的位置,通过移动右指针 遇到不为val的元素,赋值给left,然后移动左右指针来实现。但如果要移除的元素恰好在数组的开头,例如序列 [1,2,3,4,5],当 val 为 1 时,我们需要把每一个元素都左移一位,注意到题目中说:「元素的顺序可以改变」。实际上我们可以直接将最后一个元素 5 移动到序列开头,取代元素 1,得到序列 [5,2,3,4],同样满足题目要求。这个优化在序列中 val 元素的数量较少时非常有效。
2026-08-02 17:55:19
438
原创 C语言排序算法全解析:从原理到实现,附性能对比与复杂度分析
本文介绍了经典排序算法:插入排序(直接插入排序和希尔排序)、选择排序(直接选择排序和堆排序)以及交换排序(冒泡排序和快速排序)、计数排序 并分析了时间/空间复杂度特性
2026-07-28 16:45:39
350
1
原创 零基础小白在学习链表(LinkedList)的思考 带你拆解底层逻辑
从一名初学者的视角 带你了解我在学习链表过程中的困惑与思考有问题希望大家可以多多指出~
2026-07-14 02:23:55
364
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅