
C++ 四十年演进:从 C with Classes 到现代标准
C++ 发展历程涵盖从 C with Classes 起源到 C++23 标准的演进。文章梳理了关键时间节点,推荐了 cppreference 及经典书籍资源,并深入解析命名空间机制以解决标识符冲突问题。通过对比 C 与 C++ 的基础程序差异,帮助初学者理解现代 C++ 的核心特性与最佳实践。
博客作者
加密算法研究者
369
已发布文章
12K
博客获赞
701K
博客浏览
第 14 页

C++ 发展历程涵盖从 C with Classes 起源到 C++23 标准的演进。文章梳理了关键时间节点,推荐了 cppreference 及经典书籍资源,并深入解析命名空间机制以解决标识符冲突问题。通过对比 C 与 C++ 的基础程序差异,帮助初学者理解现代 C++ 的核心特性与最佳实践。
系统梳理 C++ 基础知识与核心编程概念。内容包括 sizeof 与 strlen 的区别、指针与引用的本质差异、空指针与野指针的处理、const/volatile/static 关键字用法、内存分配机制对比。重点解析面向对象三大特性:封装(类结构、构造函数/析构函数、深浅拷贝、this 指针、友元)、继承(访问权限、构造析构顺序、菱形继承虚继承)及多态(静…
针对算法练习等需要独立编码的场景,GitHub Copilot 的自动补全可能产生干扰。通过 Visual Studio 扩展管理界面或状态栏图标,可找到 Copilot 相关配置并关闭其启用状态。此操作无需卸载插件,仅调整开关即可恢复手动编码体验,适合希望锻炼基础能力的开发者。

复制带随机指针的链表是链表算法中的高频考点。核心难点在于 random 指针的随机指向关系难以直接映射。采用三步法原地解决:首先遍历链表在每个原节点后插入复制节点;其次利用原节点 random 指针推导复制节点的 random 指向;最后拆分交织链表恢复原状并获取深拷贝头节点。该方案无需额外哈希表,空间复杂度为 O(1),时间复杂度为 O(n)。
介绍 JDK 22 的安装流程与环境变量配置方法。内容涵盖安装前系统要求、图形化安装步骤、命令行验证方式、PATH 环境变量设置及 JDK、JRE、JVM 核心概念解析,帮助开发者快速完成 Java 开发环境搭建。
基于 Simulink 搭建 UR5e 协作机器人抓取系统,融合视觉定位与阻抗力控。采用 PBVS 策略识别 ArUco 标记获取物体位姿,针对圆柱和方块规划抓取点。核心利用阻抗控制器实现柔顺接触,动态适应物体位置偏移。仿真验证显示定位误差小于 1mm,力控误差小于 0.5N,动态响应快且抓取成功率超 95%。该方案为无序分拣与人机协作装配提供了可行的技术路…
FPGA 原型验证是芯片验证的关键技术。文章对比了软件仿真、硬件加速仿真、手工 FPGA 原型与 FPGA 原型验证(Emulation)的差异。通过 Quickturn 历史案例,说明 Emulation 如何利用多 FPGA 阵列实现硬件级仿真速度,同时保持软件调试能力。重点分析了各验证方法在原理、速度、成本及调试难度上的区别,为初学者提供选型参考。

树形结构是非线性数据结构的基础,包含根节点与子节点的层次关系。二叉树作为树的特例,分为满二叉树与完全二叉树,常用顺序或链式存储。堆是一种特殊的完全二叉树,分为大顶堆与小顶堆,常用于优先队列实现。详细阐述了树与二叉树的定义、术语及存储方式,并重点通过 C 语言实现了基于数组的大顶堆,涵盖初始化、插入、销毁及打印功能,帮助理解底层数据结构与算法逻辑。

TCP 基于字节流传输,缺乏消息边界,容易导致粘包或拆包问题。通过手写一个网络计算器示例,演示如何设计应用层协议(长度头加分隔符)来解决这一问题。内容涵盖协议封装 Encode/Decode 实现、请求响应结构设计以及完整的 C++ 服务端与客户端代码,帮助开发者理解如何在应用层确保数据完整性。

C++ 中二叉搜索树(BST)的概念、性能分析及完整实现。内容涵盖 BST 的定义与性质,最优与最坏情况下的时间复杂度分析,以及插入、查找、删除等核心操作的循环实现逻辑。详细讨论了删除节点时的四种情况及替换策略,并实现了拷贝构造、析构等默认成员函数。此外,文章区分了仅 Key 模型和 Key/Value 模型的应用场景,提供了完整的命名空间代码示例,适用于理…

前端兼容性策略的核心在于平衡用户体验与开发成本。优雅降级主张先构建完美版本再适配旧环境,适合内部系统或短期活动;渐进增强则强调从基础内容出发逐步叠加特性,利于 SEO 及长期维护。现代工程化工具已能自动处理大部分前缀兼容问题,开发者应根据业务场景灵活选择,本质是对用户设备的尊重。
Webman 是基于 Workerman 的高性能 PHP 框架,采用常驻内存和异步非阻塞架构。其核心机制、项目结构、API 开发流程、进程配置、缓存策略及生产环境部署方案。通过电商案例展示了其在高并发场景下的性能提升效果,包括响应时间降低和 QPS 提升。

一款名为 LLPlayer 的 Windows 播放器,该工具利用 AI 技术(如 Whisper 模型)实现视频外语语音的实时识别与中文字幕生成。主要解决无字幕视频观看困难及外语学习需求。使用流程包括导入视频、配置 AI 模型(建议 Base 或 Small)、选择语言对并播放。适用于追剧、教程学习与听力练习。需注意硬件配置,显存不足可能导致卡顿,且首次运…

Linux 环境下 Vim 编辑器的基本操作。Vim 是一款多模式编辑器,包含命令模式、插入模式、底行模式、替换模式和视图模式。文章重点讲解了命令模式下的光标移动、复制剪切删除及撤销指令,以及 h/j/k/l 键的使用逻辑;底行模式下的保存、退出、搜索、分屏及替换指令;替换模式的基本用法。通过掌握这些核心指令,可以有效提升代码编辑效率。
在 CentOS 7 系统上通过 YUM 安装 PostgreSQL 14 的步骤,包括初始化数据库、修改默认密码、配置远程访问权限及监听地址。同时涵盖了 PostgreSQL 的基本登录方式、数据库与数据表操作命令,以及数值、字符串和日期时间等常用数据类型的说明,帮助用户快速上手使用。

LLaMA-Factory 是大语言模型微调工具。在 WSL Ubuntu 环境下,需先确认 GPU 支持 CUDA 并安装 GCC。通过 Conda 管理 Python 环境,安装指定版本的 PyTorch 与 CUDA 驱动。随后克隆 LLaMA-Factory 仓库并安装依赖包。完成后可通过命令校验版本,启动 WebUI 实现可视化零代码微调。注意默认…

基于 Docker 在 Ubuntu 系统部署 Web-Check 网站诊断工具,结合 cpolar 内网穿透配置公网地址,解决异地团队协作查看检测报告的需求。无需公网 IP 即可实现安全远程访问,平衡了内网资源隐蔽性与运维便捷性。
提供了在 Linux 主流发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux)上安装 PostgreSQL 的详细步骤。内容包括服务启动、初始化、验证安装、设置用户密码、配置远程访问及防火墙规则。此外还涵盖了创建数据库和用户的方法,以及常用命令总结和卸载指南。适合系统管理员和开发者快速部署数据库环境。
OpenClaw 是一款支持本地部署的 AI 助手,兼容 WhatsApp、Telegram 及飞书等聊天软件。 macOS、Linux 及 Windows 系统的安装流程,涵盖 Node.js 环境配置、API Key 设置、飞书应用权限申请与绑定步骤。同时提供常见报错解决方案,如 node-gyp 编译失败、执行策略限制及网络依赖卡顿处理,帮助用户快速搭…

TrendRadar 本地部署教程。通过 Docker 容器化部署 TrendRadar 项目,实现基于 NVIDIA 免费 API 的零成本 AI 热点分析。支持自定义新闻源抓取、飞书消息推送及 Markdown 渲染修复。集成 MCP 协议与 Cherry Studio 进行深度对话交互。配置 Web 服务局域网访问,优化关键词匹配规则。最终达成数据自主…