Rule of Three/Five/Zero:面试官让我写一个安全的String类,我漏掉了一个函数
上篇聊了RAII,今天接着讲一个和RAII直接相关的类设计法则——Rule of Three/Five/Zero。面试的时候,面试官说"写一个简单的String类,管理一个char*缓冲区"。我写了构造函数、析构函数。面试官问"拷贝构造呢?"…
阅读更多 →
掌握行业动态 · 学习前沿技术
持续更新 · 价值分享
上篇聊了RAII,今天接着讲一个和RAII直接相关的类设计法则——Rule of Three/Five/Zero。面试的时候,面试官说"写一个简单的String类,管理一个char*缓冲区"。我写了构造函数、析构函数。面试官问"拷贝构造呢?"…
阅读更多 →阶段一C基础完结,从今天开始进入阶段二:C进阶与实战。先聊一个贯穿整个C资源管理的核心思想——RAII(Resource Acquisition Is Initialization)。面试的时候,面试官问"你怎么保证资源不泄漏?"我说…
阅读更多 →上篇聊了C17的新特性,今天进入一个在机器人开发里绕不开的话题——多线程。面试的时候,面试官问"你在项目里用过线程吗",我说用过。面试官接着问"为什么机器人系统需要多线程?"我说"因为要并行处理"…
阅读更多 →上篇聊了右值引用和移动语义,C11/14的核心特性基本覆盖了。今天进入C17的地盘。面试的时候,面试官问了个问题:"你有一个函数,需要同时返回成功/失败标志和结果数据,怎么设计?"我说用pair。面试官…
阅读更多 →1. 项目背景与核心需求双相步进电机作为工业自动化领域最常见的执行元件之一,其控制精度直接影响整个系统的性能表现。传统驱动器采用固定细分模式,难以兼顾高速运行与精确定位需求。基于ARM单片机的细分驱动器设计,正是为了解决这一行业痛点…
阅读更多 →1. 引言在人工智能和自动化领域,构建智能代理(Agent)的需求日益增长。Python 的 agent-builder 包为开发者提供了一套高效、灵活的工具,用于快速搭建、配置和部署各类智能代理。本文将全面介绍 agent-builder 包的功能特性、安装方…
阅读更多 →1. 项目概述:为什么游戏逆向需要扎实的C基础?如果你对游戏逆向感兴趣,或者已经尝试过用一些现成的工具去“窥探”游戏内部,但总感觉隔着一层雾,看不懂那些内存地址、函数调用和数据结构,那么你很可能缺的不…
阅读更多 →1. 引言在 Python 生态中,agent-client-hufr 是一个专注于智能体(Agent)通信与任务调度的客户端库。它封装了与 Hufr 服务端交互的核心逻辑,帮助开发者快速构建基于 Agent 架构的分布式应用。本文将从功能、安装、语法参数、实际案…
阅读更多 →1. 工具设计思路与核心原理每次遇到加密压缩包却忘记密码时,那种抓狂的感觉我太熟悉了。去年帮朋友恢复项目资料时,我花了三天时间研究各种破解方案,最终用Python打造了这个不足百行的密码破解器。它的核心原理就像用十万把钥匙挨个试锁——虽…
阅读更多 →1. 项目概述:为什么我们需要智能指针?如果你写过C,尤其是写过一些规模稍大的项目,那你大概率经历过或者听说过“内存泄漏”这个噩梦。指针用起来很爽,直接操作内存,性能拉满,但一个不小心&#…
阅读更多 →一个可解释性工具,一套意识叙事。 每隔一段时间,Anthropic 就会发布一些研究,在公众层面掀起一波「AI 是否有意识」的讨论。从今年 4 月 Mythos 模型安全报告,到年初 Claude 宪法对齐更新,舆论始终容易把模型涌现的类…
阅读更多 →1. 项目概述:为什么C的核心概念如此重要?如果你刚开始接触C,面对“指针”、“内存”、“绑定机制”这些词,是不是感觉像在看天书?别担心,这种感觉每个C新手都有过。我刚开始学的时候,也觉得这些…
阅读更多 →文章目录前言为什么 Tabs 页面特别容易越写越乱先划清父子职责先把父页面和频道页的边界想清楚完整 ArkUI 示例把关键代码一段段拆开容易踩坑的地方新手最容易踩的坑放进真实项目还要补什么写在最后前言 Tabs 做页面切换很简单,真正容易乱的是状态边界。 我见过不…
阅读更多 →1. 项目概述:从VTK数据到通用点云格式在三维可视化与数据处理领域,VTK(Visualization Toolkit)是一个功能强大的开源库,而C则是其原生且性能最优的开发语言。我们经常遇到的一个场景是:在VTK中构建或处理完…
阅读更多 →1. 项目概述:为什么我们需要命名空间?如果你写过稍微复杂一点的C程序,或者尝试过集成第三方库,大概率遇到过这样的编译错误:error: reference to ‘xxx’ is ambiguous。我第一次遇到这个错误是在一个学生项目里&#…
阅读更多 →在AI大模型技术快速迭代的今天,模型架构设计呈现出两种主流路径:一种是模块化组合的专家混合模型(MoE),另一种是谷歌Gemini团队坚持的单一个体模型架构。最近与Gemini核心团队的技术交流中,他们深入阐述了选…
阅读更多 →在实际 AI 应用开发中,选择合适的大语言模型(LLM)并有效集成到智能体(Agent)框架中,是决定项目成败的关键环节。腾讯混元最新发布的 Hy3 模型,以其 295B 参数的混合专家(MoE…
阅读更多 →1. 项目概述:从“奇技淫巧”到标准库的优雅实践最近在社区里看到不少关于C标准库中std::overloaded的讨论,很多朋友觉得它像是一种“奇技淫巧”,乍一看代码有点绕,不明白为什么标准库要引入这么一个东西。我自己在重构一个历史遗留…
阅读更多 →Folk Computer 是一个彻底颠覆传统编程方式的物理计算系统,它让编程不再局限于屏幕和键盘,而是将整个物理空间变成可编程环境。这个由 Omar Rizwan 和 Andrs Cuervo 打造的开源项目,源自 Alan Kay 在 Xerox PARC 的愿景,继承了 CD…
阅读更多 →