自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【Linux】文件描述符背后的底层逻辑:重定向、VFS 与用户态缓冲区

本文围绕 Linux 文件 I/O 的进阶内容展开,从 stdout/stderr 重定向分离、2>&1 的底层含义讲起,再结合 files_struct、struct file、file_operations 理解 fd 表、VFS 和“一切皆文件”。同时分析 printf/write 的缓冲差异、fork 后重复输出原因,以及 glibc 中 FILE* 与 _IO_FILE 的关系

2026-07-10 18:29:32 288 17

原创 【Linux基础IO】printf 为什么会写进文件?一文搞懂重定向和 dup2 底层原理

本文继续深入 Linux 文件 I/O 中的重定向原理,从 fd 的分配规则入手,解释 close(1) 后 printf 为什么会写入文件,并通过 dup2 理解 >、>>、< 的底层实现。文章还补充了 2>&1 的执行顺序、MiniShell 中重定向的实现流程,以及多进程下 close(fd) 与引用计数的关系,帮助读者真正理解重定向到底改了什么。

2026-07-07 18:37:15 366 24

原创 【Linux】基础 I/O 详解:从 fopen 到 open,终于搞懂 fd 为什么从 3 开始

本文从 Linux 文件 I/O 的基础概念讲起,先说明文件不仅包含内容,也包含权限、inode 等属性信息,再回顾 fopen、fread、fwrite 等 C 文件接口,并引出 open、read、write、close 等系统调用。最后通过实验解释 stdin/stdout/stderr 与 0、1、2 的关系,以及 fd 为什么通常从 3 开始,帮助读者理解 FILE* 与文件描述符的联系。

2026-07-07 18:33:17 956 23

原创 【Linux进程控制】从exec程序替换到手写简易Shell:fork、execvp、环境变量与内建命令

本文针对 Linux 进程程序替换与自定义 Shell 设计的深度硬核技术长文 。 文章首先从内核层深度解密了进程程序替换的底层物理覆盖机制与彻底分离父子进程的写时拷贝(COW)核心技术 ,全面拆解了 exec 系统调用函数簇的命名艺术、特性与环境传参机制 。接着,文章以工业级规范手把手演进、闭环构建了一个支持 cd、export、echo 等内建命令拦截拦截 、动态刷新工作路径并完美维护全局环境变量表的常驻交互式微型 Shell 命令行解释器

2026-07-04 20:27:52 1304 14

原创 【Linux系统篇】从 fork 到 WNOHANG:进程创建与等待机制详解

本文深入拆解 Linux 进程控制的核心机制,围绕进程“创建、退出、回收”三大生命周期展开。文章首先解析了 fork 背后写时拷贝(COW)的延迟复制艺术与分流用途;随后对比了 return、exit 与 _exit 在刷新 C 库缓冲区上的底层差异;并重点剖析了父进程如何通过 wait / waitpid 攻克僵尸进程。通过对原始 status 源码级位布局的分析,强调了使用 WIFEXITED 等系统宏的规范姿势,最后给出了基于 WNOHANG 的非阻塞轮询实战设计。

2026-07-02 19:15:43 989 44

原创 【Linux进程】程序地址空间详解:虚拟地址、页表、写时拷贝与mm_struct

本文深入讲解 Linux 进程地址空间 的技术博客。文章从“父子进程为何能打印相同地址却拥有不同数据”的实验现象切入,层层剖析了虚拟地址与物理地址的核心区别。详细阐述了 mm_struct 和 vm_area_struct(VMA)在内核中“先描述、再组织”的管理本质,并深入探讨了页表权限检查、写时拷贝(COW)及缺页中断等底层机制,帮助读者全面打通从用户态指针到内核态内存管理的认知闭环

2026-06-30 23:13:20 1402 36

原创 【AI Agent工程化】工具会调用不等于能上线:参数契约、权限边界、幂等与回放测试

本文针对 Agent 在实际落地中面临的参数漂移、路径越界、重复调用及审计缺失等工程痛点,提出了构建一层独立、安全且可追踪的工具执行边界的解决方案。文章基于 Python 逐步搭建起一个小型执行器,详细阐述了工具注册表设计、JSON Schema 参数校验、工作区路径防越界、基于会话的能力清单权限控制、业务幂等键设计以及 SQLite 审计日志落库等核心工程实践,并包含离线录制回放测试与故障注入方案。旨在帮助开发者把不稳定的模型输出,转化为可判断、可拒绝、可追踪的确定性系统行为。

2026-06-27 00:14:13 1154 44

原创 【Linux排障实战】Docker容器启动失败怎么查:端口、日志、权限与网络

本文针对 Docker 容器启动失败等常见故障,总结了一套由浅入深的排障方法论。文章摒弃了“盲目重启”的误区,梳理了容器四种核心状态的底层逻辑,并围绕退出码诊断、日志捕获、端口映射与容器内监听的区别、挂载目录 UID/GID 权限冲突、Compose 变量解析、容器间网络通信、以及健康检查失效等八大高频痛点,结合 Linux 和 Windows 场景给出了具体的验证命令与最小化复现方案。旨在帮助开发者打破“猜想式”排障,建立起可复现、可验证的闭环证据链,精准定位故障根因。

2026-06-22 22:18:11 1862 53

原创 【OpenCV OCR实战】拍照文档识别总是错:透视矫正、二值化、版面分割与Tesseract调参

OCR输出乱码、丢行、识别准度低?别盲目调参数了!文档识别是一条严密的图像流水线。本文用 OpenCV + Tesseract 搭建起一条“可视化”的拍照文档 OCR 流水线,通过保存并对比每一步的中间图像,带你直观排查三大痛点:图像是否处理坏、版面是否切错、OCR 引擎到底看到了什么。文章涵盖文档四角检测、透视矫正、自适应光照补偿、二值化对比、Tesseract PSM 模式选型及低置信度词框导出等核心实战。配合完整代码与工程验收清单,帮你告别玄学调参,快速建立起科学的图像预处理与 OCR 调优思维!

2026-06-18 15:23:12 2042 48

原创 【MCP实战】从0写一个本地工具服务器:文件搜索、SQLite查询与安全边界

本文针对 AI 接入 MCP 本地工具时常见的安全与边界漏洞,拒绝浅显演示,深入探讨了构建生产级本地工具服务器的实用技巧。文章基于 Node.js 24 和 TypeScript(SDK v2),从零实现了两个核心工具:一是通过真实路径校验、限制大小与扩展名的安全文件搜索工具;二是基于只读模式和参数化查询的 SQLite 任务查询工具。文章重点阐述了 Schema 校验、业务防御、stdio 日志通道隔离(必须写进 stderr)以及防信息泄露的错误处理机制,为开发者提供了一套扎实的本地工具安全防御指南。

2026-06-14 22:36:51 2913 51

原创 【Codex项目实战】从模糊需求到可验证交付:Plan、测试、Review与Worktree完整流程

本文分享了将 Codex 从“代码生成器”升级为“工程搭档”的实战指南。文章以修复商城登录 Bug 为例,演示了如何通过结构化提示词(目标、上下文、约束、完成条件)将模糊需求转化为可验证的任务。详述了 Codex 调查调用链、精确定位根因、编写表驱动测试及回归验证的全流程。同时,介绍了利用 Git Worktree 隔离并行开发、借助子代理(Subagents)深度调查的高级工作流,并结合 Git diff 与严格 Review 确保交付质量,助力开发者构建规范的 AI 协同开发思维。

2026-06-10 15:25:40 3100 57

原创 Ollama 本地大模型部署实战:从安装到 RAG 知识库完整指南

本文是一篇面向 C/C++ 读者的 Ollama 本地大模型部署与 RAG 知识库构建实战指南。文章结合实验室离线内网的实际项目复盘,系统讲解了 Ollama 的核心概念与优势,并给出了基于硬件配置的模型选型与 q4_K_M 量化版本推荐。针对 Windows 环境,详细介绍了通过环境变量迁移模型存储路径防止 C 盘爆满的技巧。此外,文章涵盖了常用管理命令、通过 Modelfile 定制专属 C++ 编程助手的方案、多语言 API 与流式调用代码,并附带了一段约 70 行、基于 ChromaDB 的最小 R

2026-06-08 23:46:47 2731 37

原创 【Python基础】从变量到面向对象:打通 Python 入门核心语法

本文是为 C/C++ 读者量身打造的 Python 入门指南。文章通过直观对比,系统梳理了缩进规则、动态变量、字符串格式化等核心语法,重点拆解了列表、字典等五大数据容器及高效的列表推导式。同时,深入讲解了函数复用、模块包管理与面向对象思想(含鸭子类型),并附带一个完整的“学生成绩统计”实战案例。最后,针对初学者总结了 input 类型、可变默认参数、循环中删除元素等四大核心巨坑,助力读者快速转换思维,掌握高效组织代码的技巧。

2026-06-08 22:56:08 3281 28

原创 Linux/Windows 双平台通关:YOLOv8 目标检测从模型选型到跨平台部署实战

本文系统剖析了基于 YOLOv8 框架的目标检测全流程实战指南。文章首先介绍了 YOLOv8 在骨干网络、解耦头、正样本分配及损失函数上的核心改进,并给出了五个版本的选型策略;随后详解了 CUDA 与 PyTorch 环境的精确搭建步骤、YOLO 格式数据集的目录结构与归一化标签要求;接着重点梳理了核心训练与数据增强参数的调参策略,提供了多 GPU、断点续训等实用脚本;最后阐述了 mAP 等评估指标的监控方法,并给出了 ONNX 和 TensorRT 模型导出部署的注意事项。全篇兼顾原理与实战,直击 OOM

2026-06-04 15:34:27 3641 60

原创 【Linux系统编程】环境变量深度解析——从 fork 继承到 export 内建命令,两张表打通进程上下文

本文深度剖析 Linux 进程上下文中 argv 参数表与 environ 环境表的内核机制。命令行参数由 Shell 按空格切分,经 _start→main 调用链传递,是命令实现多选项控制的基石;环境变量具全局特性,由 bash 登录时从配置文件加载,通过 fork 机制被子进程写时拷贝继承,常用于环境配置与身份识别。文章还解密了本地变量与环境变量的差异,并重点剖析 export、cd 等内内建命令的本质——它们不创建子进程,而是由 bash 亲自执行的内置函数,因此在 PATH 损坏时仍能运行。

2026-05-31 22:47:29 2794 58

原创 【Codex配置实战】从 config.toml 到 AGENTS.md:把 AI 编程助手调成顺手的开发环境

本文深入剖析了 AI 编程工具 OpenAI Codex 的高级配置体系,指出其不仅是聊天补全工具,更是不折不扣的“本地开发代理”。文章详细阐述了核心配置文件 config.toml(决定工具能做什么,包含模型、审批策略、沙箱权限及 MCP 外部工具扩展)与 AGENTS.md(决定工具该怎么做,涵盖多层级项目规范与代码风格约束)的协同分工。通过建立合理的权限边界与细化的项目规则,不仅能有效规避 AI 自动化开发中的翻车误操作,还能真正将通用模型转化为契合团队工程流的稳定高生产力工具。

2026-05-28 18:27:51 3894 29

原创 Linux 性能优化基石:全景拆解 PRI/NI 优先级算力争夺与 O(1) 调度算法精髓

本文深入剖析了 Linux 进程的动态运行机制与调度核心。首先,文章详解了进程优先级(PRI)与 Nice 值(NI)的计算公式、动态调整的“无记忆性”重置特性,并厘清了并发与并行的本质区别。随后,全面还原了时钟中断触发下,CPU 寄存器硬件上下文保存与恢复的完整切换步骤。最后,重点拆解了 Linux 2.6 内核经典的 O(1) 调度算法,深入分析了如何利用 140 个优先级队列、位图(bitmap)加速器实现常数级查找,以及如何通过 Active/Expired 双阵列滚动切换机制彻底根除进程饥饿问题

2026-05-25 13:04:37 1179 17

原创 《 从OS通用理论到Linux内核源码:全景拆解 task_struct 状态流转与内核双链表设计精髓 》

本文深入剖析操作系统进程管理的核心逻辑与 Linux 内核实现。首先从通用 OS 理论出发,全景拆解运行、阻塞、挂起等状态的宏观流转模型与底层队列管理机制,并深度起底 Linux 独特的“侵入式双链表”设计及 container_of 宏数学偏置原理。随后结合内核源码,详解 Linux 下 R、S、D、T、t、X、Z 等进程状态的静态定义与动态行为特征,通过实战代码复现并解释了“死循环代码却在休眠”的现象,并深入探讨了僵尸进程、孤儿进程的产生本质、内存泄漏风险以及内核 SLAB 缓存机制。

2026-05-25 09:45:00 789 36

原创 【硬核Linux】打通OS任督二脉:从冯诺依曼到进程Fork,看完直呼过瘾!

本文为你硬核拆解Linux底层逻辑!从冯·诺依曼体系的数据流动出发,带你透彻理解操作系统“先描述,再组织”的管理哲学与系统调用机制。接着深入剖析核心概念“进程”,揭秘PCB结构与cwd路径,最后通过实战代码调用fork()创建子进程,带你亲眼见证“写时拷贝”的奇妙过程。一文帮你彻底夯实系统编程基石!

2026-05-20 09:20:46 1367 30

原创 【Linux工具链】从代码托管到精准追踪Bug:Git常用指令+GDB临时变量与调用栈剖析

本文系统介绍了 Linux 开发中必备的工具链,包括 Git 版本控制和 GDB/CGDB 调试。通过 Git,开发者可以高效管理代码版本,实现多人协作、版本回溯和冲突解决;通过 GDB/CGDB,可以对程序进行调试,设置断点、条件断点、监视变量和追踪函数执行,实现精准问题定位。同时,文章还讲解了调试模式选择、调试流程及常用技巧,帮助开发者快速排查代码问题,提高开发效率和代码质量,是 Linux 开发学习与实战的全流

2026-05-16 19:20:51 1572 31

原创 【Linux工具链】编译效率革命:条件编译优化+动静态库管理+Makefile自动化,解决多场景开发痛点

本文深入剖析Linux环境下C语言编译工程化的完整解决方案,从条件编译策略入手,详细讲解如何通过宏定义和预编译指令实现代码的模块化和平台适配。重点探讨动静态库的设计原则、创建方法及性能对比,帮助开发者在不同场景下做出最优选择。最后系统介绍Makefile自动化构建技术,包括依赖管理、多目标构建和并行编译等高级技巧,大幅提升开发效率。通过实战案例演示,读者将掌握从代码编写到最终部署的全流程优化方法,构建高效、可维护的Linux C开发工程

2025-11-18 22:00:45 2834 122

原创 【Linux工具链】从跨平台适配到一键部署:yum多架构支持+Vim远程编辑+gcc交叉编译,解决多场景开发效率瓶颈

本文介绍了Linux开发必备工具,包括软件包管理器、Vim编辑器、gcc/g++编译器。软件包管理器方面,对比了源码安装、软件包安装和包管理器安装,重点讲解了yum/apt的使用,如查看、安装、卸载软件包及镜像源配置。Vim部分详细阐述其多模式操作,涵盖命令模式、插入模式、底行模式等,介绍了常用快捷键、视图模式批量化注释、分屏操作及配置方法。gcc/g++部分解析了编译过程的预处理、编译、汇编、链接四个阶段,说明各阶段作用及指令。旨在帮助C++学习者掌握Linux开发工具,提升开发效率

2025-11-07 07:49:07 3075 148

原创 【Linux】文件归属与迁移:chown修改拥有者、chgrp调整所属组,解决团队协作中的权限交接问题

本文系统梳理Linux权限管理体系,涵盖用户切换(su/sudo提权逻辑)、三级角色(owner/group/other权限边界)、权限位配置(chmod命令与rwx读/写/执行权限)、核心操作(chown修改拥有者、chgrp调整所属组)、底层原理(umask掩码计算默认权限)及安全机制(粘滞位防误删)。通过实战场景串联知识链,从单用户权限控制到多用户协作管理,详解从基础操作到进阶安全配置的全流程,帮助读者快速掌握权限设计逻辑与故障排查方法,适用于系统管理员、开发工程师及Linux初学者。

2025-10-27 12:35:19 4720 133

原创 【Linux】别再被命令行劝退!Linux 26个救命指令,从小白到运维高手

本文系统梳理Linux命令行26个核心指令,涵盖文件管理、内容查看、系统监控等六大场景。从ls、cd等基础操作,到grep文本过滤、tar压缩打包等进阶功能,配合-f实时刷新、-r递归操作等关键参数,构建完整命令体系。特别解析重定向>/>>与管道|的组合用法,以及*通配符批量处理技巧。通过对比cat/less等工具适用场景,结合日志分析、进程管理等实战案例,帮助读者快速掌握从文件操作到系统运维的必备技能,告别"鼠标依赖症",提升Linux操作效率。

2025-10-24 15:22:09 3770 122

原创 【C++继承下】继承与友元 / static 菱形继承与虚继承 组合的详解分析

本文围绕C++继承展开深入探讨,涵盖多方面关键知识点。首先介绍了实现不可继承类的两种方法,C++98通过私有化构造函数,C++11则使用final关键字。接着阐述了继承与友元、静态成员的关系,友元不可继承,静态成员在继承体系中唯一。还重点剖析了多继承及菱形继承问题,指出其数据冗余和二义性缺陷,并说明可通过虚继承解决。最后对比了继承与组合,强调优先使用组合以降低耦合度。旨在帮助读者全面理解C++继承相关知识。

2025-10-17 00:01:33 1643 101

原创 【C++多态】虚函数/虚表机制与协变 、override和final关键字全解析

本文主要介绍了C++多态的概念、定义、实现及原理。多态分为编译时和运行时多态,重点讲解运行时多态,其构成需基类指针或引用调用虚函数且完成虚函数重写。还阐述了虚函数、重写规则、协变、析构函数重写等内容,以及override和final关键字的作用,最后从虚函数表指针和动态绑定角度解释了多态实现原理。

2025-10-16 23:59:00 1816 124

原创 【C++进阶】继承上 概念及其定义 赋值兼容转换 子类默认成员函数的详解分析

本文围绕C++继承机制展开,详解继承概念与定义,包括继承方式对成员访问权限的影响及public继承的实际应用。阐述父类与子类对象赋值兼容转换规则,剖析继承中的作用域与隐藏现象。重点分析子类默认成员函数,如构造函数需调用父类构造初始化基类成员,拷贝构造与赋值重载要显式调用父类对应函数,析构函数则由编译器自动处理调用顺序,确保先子后父析构,帮助读者深入理解继承体系中类成员的复用与扩展逻辑

2025-10-12 19:55:22 1654 110

原创 C++模板进阶 非类型模板参数 模板的特化 分离编译的深入探索

本文深入探讨C++模板进阶知识,涵盖非类型模板参数(常量作为模板参数,解决宏定义局限)、模板特化(函数模板与类模板全特化/偏特化,处理特殊类型场景)及分离编译原理(剖析模板声明与定义分离导致链接错误的底层原因,提供显示实例化与直接在头文件定义两种解决方案),助读者全面理解模板高级特性与编译机制

2025-10-07 20:41:21 2293 123

原创 【C++STL上】栈和队列模拟实现 容器适配器 力扣经典算法秘籍

本文从STL容器适配器视角,深度解析栈与队列的设计本质——以双端队列(deque)为底层容器,实现高效头尾操作。结合最小栈、二叉树层序遍历等经典算法题,实战演示栈的"先进后出"与队列的"先进先出"特性,并揭秘优先级队列的堆实现原理。通过模拟实现代码,希望读完本文可以让大家对栈和队列有更深刻理解

2025-10-05 09:27:50 2189 97

原创 【C++ STL栈和队列下】deque(双端队列) 优先级队列的模拟实现与仿函数的介绍

本文聚焦STL双端队列(deque)与优先级队列的底层实现,深度剖析deque如何融合vector与list的优势,通过中控数组与分段缓存实现高效头尾操作;结合优先级队列的堆结构,详解仿函数在自定义排序规则中的核心作用

2025-10-05 09:26:05 2735 84

原创 【C++list】底层结构、迭代器核心原理与常用接口实现全解析

本文围绕list底层实现展开,从节点与链表结构构建入手,详细阐述了迭代器设计、各类接口实现及迭代器失效问题。通过模拟官方源码逻辑,完成了push_back、insert等核心操作,剖析了普通与const迭代器的实现差异及按需实例化原理,最后强调了删除操作导致的迭代器失效及解决方法,全面呈现了list容器的底层工作机制与使用要点。

2025-09-27 17:00:16 1730 112

原创 【C++STL详解】带头双向循环结构 + 双向迭代器,核心接口 + 排序效率 + 避坑指南

本文详解 C++ STL 中 list 容器:基于带头双向循环链表,双向迭代器仅支持 ++/--,不支持随机访问。涵盖构造函数、emplace_back/push_back、insert/erase 等核心接口,解析 splice 节点转移、merge 合并有序链表、unique 去重(需先排序)等特性。对比排序效率,指出 list 自带 sort 远不及 vector 中转方案。总结其适合频繁插入删除的场景及使用避坑点

2025-09-24 12:16:44 2292 94

原创 vector 从入门到通透:构造遍历、容量管理与实战技巧全梳理

本文解析 C++ STL 核心容器 vector:其本质是动态数组,支持随机访问。涵盖定义、四种构造及三种遍历方式,详解容量管理 ——vs 1.5 倍、gcc 2 倍扩容,对比 reserve(不缩容)与 resize(调大小)差异。介绍 insert、erase 等修改器的迭代器用法,分析与 string 的 '\0' 区别及嵌套容器应用,以杨辉三角实例落地,为后续模拟实现铺垫

2025-09-16 12:13:56 1283 103

原创 vector 模拟实现 4 大痛点解析:从 memcpy 到模板嵌套的实战方案

本文聚焦 C++ vector 模拟实现与底层原理:解析 reserve 需保存旧空间 size、打印模板用 typename/auto 等接口实现问题;重点剖析迭代器失效(扩容致野指针、数据挪动致位置失效)及 erase 漏删 / 越界问题;针对 memcpy 浅拷贝乱码,提出逐元素赋值的深拷贝方案。还介绍拷贝构造与赋值的常规及现代写法,说明类模板嵌套函数模板的设计目的,助力规避开发 bug

2025-09-16 12:09:42 1715 74

原创 【C++STL】告别 C 字符串噩梦!C++ string 类从入门到精通,含实战避坑指南

本文从 STL 框架出发,先说明 C 字符串存在数据与操作分离、内存需手动管理、易越界等问题,凸显 C++ string 类的优势。接着介绍 C++11 的 auto(简化类型声明)和范围 for(便捷遍历)语法。再梳理 string 核心接口,包括构造、容量(如大小、预留空间)、访问(如数组式访问)、修改(如拼接、查找)等功能用法。深入解析 VS 的 “小字符串优化” 与 G++ 的 “写时拷贝” 两种底层实现差异,重点讲浅拷贝的致命问题及传统、现代两种深拷贝实现方法,文末附 string 模拟实现资源

2025-09-07 17:07:51 3475 131

原创 C++ 模板初阶:从函数重载到泛型编程的优雅过渡

本文聚焦 C++ 模板初阶知识,针对函数重载复用率低、维护性差的痛点,阐述模板作为泛型编程基础的核心作用。重点讲解两部分:一是函数模板,包括定义格式、编译器根据实参推演生成具体函数的原理、隐式 / 显式实例化方法,以及与非模板函数的匹配原则;二是类模板,涵盖定义方式、必须显式实例化的特性、类外成员函数实现规则,及声明与定义不可分离的关键注意事项。最后总结模板在代码复用、可维护性上的优势,为掌握泛型编程及 STL 奠定基础

2025-08-30 17:34:18 1918 118

原创 【C/C++ 面试必看】深入理解内存管理:从内存分布到 new/delete 底层原理

本文聚焦 C/C++ 内存管理核心重点:含程序内存分区(栈存局部变量、堆存动态内存、数据段存全局 / 静态变量、代码段放只读常量);C 语言 malloc/calloc/realloc/free 的差异与使用陷阱;C++ new/delete 升级(对自定义类型自动调构造 / 析构函数)及底层(包装 malloc/free,new 失败抛异常);强调 new [] 与 delete [] 必匹配(有析构函数的类多存对象个数,错用必崩溃);提及定位 new 与内存池(解高频内存操作性能 / 碎片问题)

2025-08-28 14:57:59 15418 97

原创 《C++ 类与对象避坑指南上:默认成员函数 /this 指针常见误区拆解(附日期类小项目)》

本文从类的基础定义入手,顺着 “类与对象的关联” 这条主线,拆解了对象实例化的本质、this 指针的隐形逻辑,也重点梳理了默认成员函数(构造、析构、拷贝构造、赋值重载)的关键规则 —— 这些函数看似 “隐形”,却默默支撑着对象的创建、初始化、资源释放等核心操作,尤其要注意 “浅拷贝与深拷贝” 的坑,像 Stack 这类含资源的类必须手动实现深拷贝。最后通过日期类的实战,也能感受到:类与对象的核心是 “封装”—

2025-08-22 10:17:10 11475 46

原创 《C++ 类与对象进阶下:从初始化列表到编译器优化,吃透 7 大核心特性》

本文概述 C++ 类与对象进阶特性:初始化列表为成员初始化必经环节,引用、const 及无默认构造类成员须显式初始化,顺序依类内声明;内置类型转类类型靠对应构造函数,explicit 禁用隐式转换;static 成员中,变量类外初始化且共享,函数无 this 指针仅访静态成员,均受访问限定约束;友元可突破封装,关系单向不可传递,需慎用;内部类独立,受外部类类域及访问限定约束,默认是其友元;匿名对象适临时场景,生命周期仅限当前行;对象拷贝时,编译器会合并构造 / 拷贝构造优化性能

2025-08-22 10:13:49 12197 39

原创 从 C 转 C++?先吃透这些语法升级点:重载 / 引用 / 内联函数详解

本文梳理的命名空间、函数重载、引用、内联函数等特性,是 C++ 对 C 语言的关键升级 —— 既兼容底层逻辑,又通过语法优化解决了命名冲突、代码冗余等痛点。这些基础是后续类与对象、STL 等进阶内容的基石,吃透它们,就能更顺畅地迈入 C++ 面向对象编程的大门

2025-08-21 09:12:31 1157 54

空空如也

空空如也

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

TA关注的人

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