- 博客(16)
- 收藏
- 关注
原创 HTTP/HTTPS协议全解:请求响应、版本迭代、鉴权机制与面试重难点
HTTP/HTTPS是开发日常接触最多的应用层协议,接口开发、前后端联调、抓包排查、性能优化、面试高频提问均围绕其展开。本文将全面拆解HTTP协议特性、请求响应完整格式、四大版本核心差异、URL编码规则、状态码体系,以及Cookie/Session/Token三大鉴权机制、HTTPS加密原理,全覆盖开发必备HTTP核心知识点。
2026-09-21 19:16:37
579
原创 网络基础架构详解:协议分层、核心网络技术与DNS原理
网络通信是互联网数据传输的基石,所有网页访问、接口请求、数据交互,本质都是不同层级网络协议协同工作的结果。想要吃透网络原理、搞定面试高频考点、排查网络问题,首先必须掌握网络分层模型、底层核心技术以及域名解析核心逻辑。本文将从零梳理OSI七层、TCP/IP四层模型,详解各层级核心协议、NAT代理技术与DNS完整解析流程,夯实网络底层基础。
2026-09-21 19:12:51
219
原创 C++ 类与对象:this指针与const成员函数详解
this 指针是 C++ 实现对象间数据隔离与代码共享的关键机制,理解其隐式传递原理、const 修饰规则以及典型应用场景,是掌握面向对象编程的基础。结合 Point、Line、Complex 等类的设计,可以清晰看到构造函数、成员函数、运算符重载与 this 指针如何协同工作,构建出安全、高效且易用的自定义类型。
2026-08-21 17:27:23
279
原创 C++ 类与对象:this 指针与 const 成员函数详解
本文通过四个完整的类示例(Point、Line、CDate、Complex)详细讲解了 C++ 类的基本结构设计,重点分析了类与对象的内存模型,并深入剖析了 this 指针的工作原理和 const 成员函数的使用。理解这些概念对于掌握 C++ 面向对象编程至关重要,特别是在考试和实际开发中都会频繁涉及。
2026-08-21 17:27:13
201
原创 C++面向对象编程:Point、Line、Rectangle、Circle类设计与实现
所有数据成员都声明为private,通过公有成员函数访问。Line、Rectangle、Circle都包含Point对象,体现了"has-a"关系。基于Point类构建更复杂的几何图形,避免重复代码。提供清晰的公有接口,隐藏实现细节。不修改对象状态的函数都声明为const。
2026-08-20 14:46:46
235
原创 C++ 现代语法与内存管理示例
定义的变量可以根据初始化值在编译时推导出类型,但会自动剥离引用和 const 限定。C++11 引入了基于范围的 for 循环,可以简化数组和容器的遍历。会保持 const 限定,可以用于推导表达式类型而不实际执行。使用引用遍历可以修改原数组元素,使用值遍历则不会影响原数组。提供了一种灵活的方式来格式化字符串,类似于 C 语言的。不能用于非静态成员变量,也不能用于未初始化的变量。的使用,以及 placement new 的用法。中的函数调用不会实际执行,只用于推导返回值类型。C++17 支持使用。
2026-08-20 14:46:34
193
原创 C++ 基础语法与特性代码示例
/ 缓冲区大小常量定义// 日志级别枚举TRACE = 0,DEBUG,INFO,WARN,ERROR,FATAL,// 枚举值到字符串的映射// 枚举使用示例int main()// 输出:2// 输出:INFO。
2026-08-19 12:05:38
162
原创 C++ 11 右值引用与默认参数详解
默认参数在函数声明中指定,而不是在定义中。如果函数的声明和定义分开,默认值应写在声明中。// .h 头文件// .cpp 源文件void func(int a = 10) // 错误:默认值应只在声明中指定printf("");// .h 头文件// .cpp 源文件void func(int a) // 定义中不再写默认值默认参数在函数声明中指定,从右向左连续提供左值可取地址,右值不可取地址左值引用)绑定左值,右值引用&&)绑定右值const 左值引用可以绑定左值和右值。
2026-08-19 12:05:26
226
原创 C++ 基础语法与指针引用详解
在 C++ 中,引用(Reference)为变量创建了一个别名,通过引用传递参数可以实现函数对外部变量的修改,这就是函数的副作用。理解 const 与指针的关系对于编写安全的 C++ 代码至关重要。C++ 支持多种初始化方式,包括 C++11 引入的统一初始化语法。在 C++ 中,有多种方式读取字符串输入,需要注意缓冲区溢出问题。统一初始化语法可以用于各种类型的初始化,使代码更加一致。统一初始化语法更加简洁,且能避免一些潜在的类型转换问题。上面的代码展示了通过引用实现交换两个变量的值。
2026-08-18 14:12:44
195
原创 Linux 网络编程:TCP 通信基础、并发服务器与 IO 多路复用详解
监控超时阻塞时间可以精确到微秒:select 使用结构体,可以精确设置秒和微秒级别的超时时间。跨平台兼容性好:select 不仅仅在 Linux 下可以使用,在 Windows、macOS 以及其他 Unix-like 系统上也得到广泛支持。相较于 select 在操作上有所简化,不需要定义多个事件集合,也不需要每次重置集合所能监控的描述符数量,是没有限制的特性selectpollepollfd 上限默认 1024无限制无限制内核机制每次全量拷贝 fd 集合、轮询遍历。
2026-08-18 14:12:16
327
原创 网络基础与套接字编程详解
编写网络通信程序,实现两个主机上的进程之间的数据传输。网络通信也是进程间通信(IPC)方式的一种,相较于以前的进程间通信,它可以跨主机。通信两端的角色:通常指的是部署在客户机上,发起业务请求的一端。通常指的是部署在服务提供商的服务器上,向客户端提供服务的一端。通信架构:程序员既要实现服务端程序,也要实现客户端程序。谁安装了客户端,谁才能与服务器通信。程序员通常只需要实现服务端程序,客户端不需要实现(客户端就是浏览器)。我们学习的网络编程,称为套接字编程(Socket 编程)。
2026-08-17 19:05:54
322
原创 深入理解Linux多线程:从概念到线程安全实践
本文系统性地介绍了Linux多线程编程的核心概念,包括线程的基本概念、线程控制、线程安全等关键知识点。通过理解线程与进程的区别、线程的创建与销毁、线程间的同步与互斥机制,开发者可以编写出高效、安全的并发程序。在实际开发中,需要根据具体场景合理选择线程同步机制,确保程序的正确性和性能。
2026-08-17 19:05:36
299
原创 Linux进程间通信(IPC)详解:信号、管道、共享内存与信号量
IPC方式特点适用场景管道半双工,亲缘进程间通信父子进程间简单数据传递有名管道有文件名,任意进程可访问无亲缘关系进程间通信共享内存最高效,直接内存访问需要高速数据交换的场景信号量进程同步与互斥控制对共享资源的访问消息队列异步通信,支持消息类型需要可靠消息传递的系统套接字网络通信,跨主机网络应用程序。
2026-08-14 14:22:00
170
原创 Linux 进程管理与编程基础:从进程控制到文件系统调用
本文涵盖了 Linux 进程管理的基础知识、常用命令、程序编译调试、库文件使用、进程创建与终止、文件系统调用等核心概念。掌握这些内容是进行 Linux 系统编程和深入理解操作系统原理的重要基础。
2026-08-13 13:38:51
180
原创 Linux 系统基础与常用命令详解
所有内容(包括设备、进程等)都以文件的形式呈现,目录本身也是特殊的目录文件。Linux 采用倒置的树状目录结构,只有一个根目录(的隔离,保证了系统的安全性和稳定性。交换文件,直接在终端删除该文件即可。若 Vim 异常退出,可能会产生。开头且第二个字符不是。cp 文件1 文件2。mv 文件1 文件2。mv 目录1 目录2。cat >> 文件1。
2026-08-13 13:25:14
308
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅