自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++ 多态:虚函数、虚表与 vptr 深度解析

本文从 C++ 多态的底层实现出发,结合示意图拆解了含虚函数的对象内存结构与 虚函数表(vtable)的核心组成,清晰说明了虚表指针(vptr)、RTTI 类型信息、虚函数指针数组之间的关联逻辑。通过直观的图示 + 原理讲解,帮你彻底理解动态绑定的底层机制,同时纠正常见误区,是 C++ 面试与进阶学习的必备知识点。

2026-05-22 14:36:04 375

原创 Redis

Redis 是基于内存的高性能键值数据库,是后端开发的必备技能。本文从基础数据结构出发,详解过期删除与内存淘汰策略、缓存三大问题(穿透/击穿/雪崩)及解决方案、RDB 与 AOF 持久化机制、主从复制与哨兵高可用架构、Redis Cluster 集群原理,最后补充乐观锁与悲观锁的应用。

2026-06-23 09:13:38 352

原创 C++ STL 容器详解:vector、list、map 与迭代器完全指南

vector、list、map 是 C++ STL 最常用的三个容器。本文详解它们的核心用法、区别与注意事项,包括 at() vs operator[]、reserve() vs resize()、迭代器类型、map 的 operator[] 陷阱等,附大量代码示例,即学即用。

2026-05-24 19:30:00 406

原创 一文搞懂 C++ 四种标准类型转换

C语言强制转换有两个致命问题:难以查找(括号加标识符满屏都是)和意义不明(别人看不懂你想干什么)。C++ 为此引入了四种类型转换操作符——static_cast 做安全的类型转换,const_cast 去掉 const 属性,reinterpret_cast 暴力重解释内存,dynamic_cast 在多态继承中安全向下转换。本文从原理到实战,带你彻底搞懂四种转换的用法、区别和底层机制,附完整代码示例,面试高频考点全覆盖。

2026-05-23 16:55:11 398

原创 C++ 智能指针深度解析

为解决裸指针带来的内存泄漏、重复释放、野指针悬空等隐患,C++ 依托 RAII 思想设计出智能指针。本文重点剖析 unique_ptr 与 shared_ptr 核心逻辑,涵盖底层机制、所有权特性、自定义删除器、引用计数及原子操作原理。结合课堂手写完整源码,通俗拆解控制块运作逻辑、拷贝与移动语义、赋值重载优雅写法,同时对比两款智能指针的优缺点与实际适用场景。适合零基础入门夯实底层,也可作为期末复习、面试笔试常备干货资料。

2026-05-16 16:55:50 430

原创 C++ 多线程完整精讲笔记

本文全面梳理 C++ 多线程全套核心知识,从线程创建方式、对象特性、等待分离机制入手,深度剖析线程传参底层执行逻辑,详解各类互斥锁用法与使用场景,搭配条件变量实现线程同步,包含生产者消费者模型、同步队列封装等实战案例。同时区分进程与线程核心差异,讲解 Lambda 表达式实用语法,剖析死锁成因并给出高效解决方案,最后介绍 packaged_task 实现线程返回值获取,文末汇总高频易错点与避坑技巧,兼顾理论原理与可运行实战代码,适合自学提升、期末复习与面试备考使用。

2026-04-20 14:23:26 503

原创 C++ 可调用对象包装器:function 与 bind

函数指针、仿函数、Lambda 类型不同,怎么统一存储?std::bind 的占位符怎么用?成员函数为什么需要传对象指针?本文从原理到实战,帮你彻底掌握 C++ 可调用对象。

2026-04-13 16:00:00 403

原创 C++ 单例模式

本文全面讲解 C++ 单例模式,包括:单例模式概念、私有构造函数与禁止拷贝、饿汉模式(静态对象)、懒汉模式(基础版、加锁版、双重检查锁定)、C++11 静态局部变量懒汉模式(推荐)、多线程测试、两种模式对比与总结。适合 C++ 进阶学习和面试备考。

2026-04-11 11:17:56 852

原创 C++ STL入门:vector容器与仿函数详解

STL是C++标准库的核心。本文详解vector容器的四种遍历方式、at()与operator[]的区别、仿函数的定义与使用、系统仿函数、Lambda表达式,以及vector的存储建议和效率注意事项。

2026-04-09 10:54:20 412

原创 C++写时拷贝与柔性数组

写时拷贝通过引用计数实现多对象共享数据,修改时才复制;柔性数组让内存连续、管理简单。本文手把手实现一个高性能字符串类,涵盖引用计数、写时拷贝、柔性数组、移动语义等核心知识点。

2026-04-08 14:00:00 1133

原创 C++ 类与对象完整学习笔记

本文通俗易懂且系统讲解 C++ 面向对象核心重难点,包含 this 指针底层原理、空类大小、构造析构、拷贝构造、赋值重载、深浅拷贝、移动语义、编译器 RVO/NRVO 优化。结合通俗易懂案例,最后手写无柔性数组版本 MyString 完成实战,全程逻辑连贯、无冗余,适合 C++ 新手夯实基础、期末复习、面试复盘。

2026-04-05 14:16:06 492

原创 C++ using详解

using是C++中功能多样的关键字。本文详解using的三种用法:命名空间引入、类型别名、模板别名,以及与typedef的对比,一篇搞懂C++ using。

2026-04-02 15:45:00 379

原创 C++ 类型推导与命名空间

本文系统讲解 C++ 核心语法工具:从auto类型推导的基础用法、特殊规则到限制场景,再到decltype的类型获取与auto的对比,最后梳理using关键字的三大用途与命名空间规范,内容逻辑连贯、要点清晰,适合期末复习与面试复盘。

2026-04-02 11:21:52 420

原创 C++ new/delete详解

C++动态内存管理用new/delete代替malloc/free。本文详解new/delete用法、数组分配、placement new、nothrow、内存泄漏与悬空指针等常见陷阱,一篇搞懂C++堆内存管理。

2026-04-01 10:59:48 468

原创 C++函数重载详解

函数重载是C++的重要特性,允许同名函数处理不同类型。本文详解重载条件、const影响、缺省参数、匹配优先级、名字粉碎技术,一篇搞懂C++函数重载。

2026-03-31 14:44:00 459

原创 Linux静态库与动态库详解:从生成到使用,一篇搞定

静态库和动态库有什么区别?怎么生成?怎么用?动态库加载报错怎么办?本文一篇讲透Linux库的生成与使用,包含完整命令示例和常见问题解决。

2026-03-30 14:19:56 601

原创 C++引用全解

引用是C++的重要特性,也是面试高频考点。本文从引用本质讲起,涵盖三大特点、const引用、引用作为函数参数、返回局部变量陷阱、数组引用、数组名退化、引用与指针的区别,一篇搞懂C++引用。引用是C++的重要特性,也是面试高频考点。本文从引用本质讲起,涵盖三大特点、const引用、引用作为函数参数、返回局部变量陷阱、数组引用、数组名退化、引用与指针的区别,一篇搞懂C++引用。

2026-03-30 11:13:39 2816 1

原创 C++左值和右值

左值和右值怎么区分?const int& 为什么能绑定字面常量?int&& rr = 10; 中的 rr 到底是左值还是右值?本文详解C++左值与右值,避开常见误区。

2026-03-29 16:41:10 223

原创 C语言文件操作详解

从零掌握C语言文件操作,字符级、字符串级、格式化读写全讲透,附高频易错点分析和面试常考问题。

2026-03-29 11:25:19 381

原创 整数在内存中的存储(原码、反码、补码详解)

计算机只会加法,那减法怎么算?答案是用补码。本文从零讲解原码、反码、补码的概念与转换规则,深入分析整型在内存中的存储方式、类型转换规则,并通过多个经典面试题(字符数组长度、无符号循环陷阱、strlen返回值比较等)帮助读者彻底理解。适合C语言初学者和求职面试者。

2026-03-28 12:14:57 423

原创 Linux基础命令与操作

Linux系统结构、目录详解、常用命令、vim编辑器、进程管理、打包压缩、gcc编译等入门必备知识,一篇搞定。

2026-03-27 16:50:21 370

原创 字符串函数与内存函数详解

字符串函数与内存函数是C语言最常用的工具,但细节坑很多。本文详解strlen/strcpy/strcat/strcmp的使用与模拟实现,以及memcpy/memmove/memset的底层原理,附常见面试题。

2026-03-26 16:49:22 378

原创 malloc、calloc、realloc 怎么用?一篇搞定动态内存

本文详细讲解 C 语言动态内存管理,从为什么需要动态内存入手,介绍 malloc、calloc、realloc、free 的使用与区别,总结动态内存常见错误与避坑方法,并结合高频面试题深入分析野指针、内存泄漏等问题,帮助初学者彻底掌握动态内存核心原理与实战技巧。

2026-03-25 15:47:01 659

原创 内存对齐与联合体:结构体大小计算的秘密

为什么 struct { char a; int b; } 的大小不是5,而是8?本文详细讲解结构体内存对齐的规则、计算方法,以及 #pragma pack 的用法,同时介绍联合体(union)的大小计算规则和经典应用(判断大小端)。通过多个示例和图解,帮你彻底搞懂结构体与联合体的内存布局。

2026-03-24 16:16:26 407

原创 整数在计算机里:为什么存的是补码,输出的却是原码?

计算机用补码存整数,但printf输出的却是原码,这中间发生了什么?本文从原码、反码、补码讲起,带你走一遍整数从代码到内存、再从内存到输出的完整流程。包含类型转换规则、整型提升、经典面试题分析,帮你彻底搞懂整数在内存中的存储奥秘。

2026-03-20 09:00:00 447

原创 C语言指针详解:从内存地址到指针进阶,彻底搞懂指

C语言指针从入门到精通,包含内存地址原理、指针三大操作、指针与数组/字符串/函数的关系、指针数组vs数组指针、多级指针、void指针、经典练习题和避坑指南,一篇搞定指针所有难点。

2026-03-18 14:29:26 535

原创 C语言数组详解:从一维到多维,彻底搞懂数组

C语言数组从入门到精通,包含一维数组、二维数组的三种初始化方式、内存布局详解、经典练习题(求和/求积/素数筛选)和避坑指南,一篇搞定数组所有知识点。

2026-03-17 12:42:50 262

原创 C语言循环结构详解:while、for、break、continue一篇全掌握

C语言while和for循环从入门到实战,包含语法详解、break/continue区别、经典练习题和编程建议,一篇就够了。

2026-03-17 11:32:54 500

原创 C语言分支结构详解:if语句与switch语句全面解析

掌握C语言分支结构,就看这一篇!详解if与switch语句的语法、应用场景与常见“坑点”,并通过判断奇偶数、7的倍数等实例快速上手,助你彻底打通程序逻辑的任督二脉。

2025-10-07 16:07:57 354

原创 《C语言数据类型全解析:从基础类型到常量变量》

本文全面解析C语言三大数据类型家族:整型、浮点型和字符型,详细对比各类型的格式控制符、内存大小及使用场景。包含丰富的代码示例,讲解变量与常量的本质区别,全局变量与局部变量的作用域,以及字面常量、const常变量和宏常量的使用方法。为初学者提供数据类型选择指南和编程实践建议,帮助建立扎实的C语言基础。

2025-10-07 14:28:25 410

空空如也

空空如也

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

TA关注的人

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