自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

何曾参静谧的博客

生命不息,学习不止!

  • 博客(575)
  • 收藏
  • 关注

原创 「C/C++」C++封装篇 之 Impl 类声明的位置 封装边界和编译依赖的区别

本文对比了C++中Pimpl惯用法的两种实现方案。方案一将Impl类声明为全局类,优点是允许外部前向声明和实现切换,但存在命名污染和导出问题;方案二采用私有嵌套类,完美封装实现细节,减少编译依赖,是更推荐的做法。文章通过表格对比了两者的特性差异,并提供了典型实现示例,建议优先选择方案二,仅在需要共享实现或动态切换等特殊场景才考虑方案一。

2026-04-06 09:31:42 386

原创 「C/C++」C/C++经验篇 之 `throw` 后面可以跟以下几种内容

throw。

2026-03-18 08:47:19 303

原创 「C/C++」C++17 之 std::any 详细介绍

std::any 是 C++17 引入的类型安全容器,可存储任意类型的单个值,替代不安全的 void*。摘要如下: 基本使用:支持多种初始化方式(直接赋值、make_any、in_place_type构造),通过any_cast安全访问值(返回指针或抛出异常)。 核心功能: has_value()检查是否含值 type()获取类型信息 reset()清空内容 emplace()就地构造新值 swap()交换内容 应用场景: 存储异构数据(如vector<any>混合容器) 实现类型擦除的通用编程

2026-03-17 16:21:50 360

原创 「IDE」VS2022 之 强制包含文件和与预编译头文件的对比

强制包含文件是一种手段,它保证每个源文件都自动引入了某个头文件。预编译头文件是一种目的,它通过预编译来提升编译效率。在VS的典型配置中,使用“强制包含文件”功能来自动引入“预编译头文件”,是实现预编译头加速的一种便捷方式。跨平台代码需谨慎:如果你的代码需要跨平台(如在GCC下编译),直接使用“强制包含文件”功能可能带来问题,因为这是MSVC的特定功能。更通用的做法是在每个源文件中显式地#include预编译头文件,然后通过构建脚本(如Makefile)在其他编译器上模拟或关闭此功能。

2026-03-13 10:36:20 407

原创 「IDE」VS2022错误集 之 C1128 错误

本文介绍了VS2022中C1128编译错误的解决方法。该错误是由于目标文件节数超过COFF格式限制导致,常见于大量模板实例化或现代C++特性的使用。主要解决方案包括:1)添加/bigobj编译器选项(推荐);2)拆分代码文件或减少模板使用;3)在CMake中配置编译选项。文章建议优先使用/bigobj选项,因其简单有效且不影响编译输出。文末附有作者博客链接及动态图片。

2026-03-09 15:27:00 350

原创 「IDE」VS2022 之 多处理器编译

本文介绍了在Visual Studio 2022中开启多线程编译的方法,可显著提升大型项目的编译效率。详细讲解了C++项目启用多处理器编译的步骤(/MP选项设置和/Gm-关闭),以及解决方案级并行项目生成的配置方法。同时提供了C#项目并行编译的设置指南,并提醒注意硬件限制、项目特性和内存消耗等注意事项。文章还附带了作者博客链接和多个技术专栏的访问入口。

2026-03-08 22:02:13 417

原创 「C/C++」经验篇 之 头文件后缀 .h 和 .hpp 区别

后缀主要取决于项目风格、团队约定和个人偏好。这两种后缀在技术功能上是完全相同的,预处理器处理。,不要混用两种后缀。建议在项目开始时确定约定,并写入代码规范文档。越来越流行,因为它清晰地表明了文件的C++特性。的第三方库(如Boost),保持一致使用。如果主要与C库交互,使用。时只关心文件内容,不关心后缀名。比具体选择哪种后缀更重要。在现代纯C++项目中,

2026-03-07 20:03:46 398

原创 「UG/NX」NX二次开发 之 NX外挂运行错误 signal 11

虽然概率较低,但如果上述方法都无效,也可能是硬件本身不稳定造成的,例如内存条接触不良、超频导致不稳定等。可以尝试使用内存诊断工具(如Windows自带的内存诊断程序)进行检查。,简单来说,就是程序试图访问它没有权限访问的内存地址,导致系统终止了该程序。:NX的运行依赖于微软的Visual C++运行库。:NX的用户配置文件(存放着你的界面设置、自定义快捷键等)如果损坏,也可能导致启动时崩溃。:NX作为专业的工程软件,对显卡驱动有较高要求。你遇到的这个错误,是西门子NX软件一个比较经典的初始化失败问题。

2026-03-07 14:04:37 31

原创 「Win」Windows 之 RegisterClassEx 注册窗口类

本文介绍了Windows程序中注册多个窗口类的实现方法。通过示例代码展示了如何注册主窗口、子窗口和对话框三类窗口,并详细说明了每个窗口类的参数设置要点。文章总结了多窗口类注册的常见应用场景,包括不同类型窗口、自定义控件和MDI应用程序等。特别强调了注册时的注意事项:类名唯一性检查、返回值验证、避免重复注册以及系统资源管理。最后提供了相关错误处理和资源检查的代码示例,帮助开发者正确实现多窗口类注册功能。

2026-03-07 08:59:41 308

原创 「IDE」VS2022 之 C++ 关闭控制台窗口

本文介绍了4种在C++中关闭控制台窗口的方法:1)修改VS链接器设置,切换子系统为Windows并设置入口点;2)使用GCC/MinGW和MSVC的编译器选项;3)通过代码隐藏窗口(Windows平台);4)创建Windows应用程序改用WinMain。推荐第一种方法,修改链接器设置最为简洁有效。文章来自何曾参静谧的博客,提供完整代码示例和详细配置步骤。

2026-03-06 10:57:26 466

原创 「C/C++」经验篇 之 C++ 参数初始化对比

不过,如果你的团队已经有固定的编码规范,保持一致性比哪种风格更重要。在实际项目中,两种写法都能正常工作,只是现代 C++ 倾向于使用统一初始化语法。

2026-03-03 14:07:30 614

原创 「C/C++」C/C++ 经验篇 之 开发自检表

本文整理了C++开发的35项关键自检要点,涵盖数值运算、内存管理、代码质量、性能优化、STL使用、并发编程、错误处理等方面。重点包括:浮点数比较需用epsilon公差、RAII资源管理原则、容器访问边界检查、函数单一职责拆分、移动语义应用、线程安全同步、异常安全保证等现代C++开发规范。通过这份自检表,开发者可以系统性地检查代码质量,避免常见陷阱,提升程序的健壮性和可维护性。完整内容可访问作者博客获取更多技术专栏资源。

2026-03-01 22:09:49 828

原创 「IDE」VS2022 图标资源清理问题

本文介绍了VS2022中图标资源清理问题的5种解决方法:1)清理并重新生成解决方案(最有效);2)强制刷新资源文件;3)手动编辑资源文件ID;4)检查图标文件路径;5)重启VS。重点推荐方法1(清理临时文件+重新生成),同时建议检查ICO文件格式和尺寸,确保资源引用正确。博客还提供了个人专栏链接和技术资源。

2025-11-16 10:23:47 596

原创 「C/C++」经验篇 之 头文件引用详解

本文深入解析C++头文件引用最佳实践:1)优先使用前置声明减少依赖;2)遵循最小包含原则;3)确保头文件自包含性;4)采用#ifndef或#pragma once保护机制;5)规范头文件包含顺序;6)通过前置声明避免循环包含;7)对模板实现特殊处理。这些原则能提升编译效率、降低耦合度,是构建高质量C++项目的关键基础。

2025-10-31 09:50:02 1010

原创 「Win」WindowsAPI 之 CreateWindowEx 创建一个重叠窗口、弹出窗口或子窗口

函数用于创建一个重叠窗口、弹出窗口或子窗口。它可以指定窗口的扩展样式,而基础的函数是其功能子集(扩展样式为 0)。在现代 Win32 编程中,是首选。[in] DWORD dwExStyle, // 扩展窗口样式[in, optional] LPCWSTR lpClassName, // 窗口类名[in, optional] LPCWSTR lpWindowName, // 窗口标题[in] DWORD dwStyle, // 窗口样式[in] int X, // 初始 X 坐标。

2025-10-02 21:34:26 1162

原创 「UG/NX」NXOpen篇 之 容器类 NXOpen::CurveCollection 曲线容器

本文全面解析NXOpen::CurveCollection类,这是西门子NX软件中曲线管理的核心容器。该类继承自TaggedObjectCollection,提供曲线创建、访问和管理的统一接口,具有智能对象管理和迭代器模式两大特性。构造函数为私有,需通过BasePart对象获取实例,确保部件所有权关系。 文章详细介绍了各类曲线创建方法,包括基于坐标点和点对象的直线创建方法、无限直线的两种创建方式(三点定义和配对方式),以及三点圆弧创建和矩阵定向圆弧创建的数学原理与参数解析。特别对圆弧创建中的alternat

2025-09-25 09:18:43 228

原创 「C/C++」番外篇 之 CMakeLists常用构建目录结构

本文介绍了两种CMakeLists常用构建目录结构方案:1)经典分层结构,包含分层清晰的include、src、tests等目录,推荐使用;2)按模块分组结构,以功能模块为单位组织代码。两种方案均遵循模块化设计原则,适用于C/C++项目构建。博客作者何曾参静谧还提供了多个技术专栏链接,涵盖Windows程序开发、C/C++、算法、Python等方向。文章配有动态分割线图片,风格简洁实用。

2025-09-24 21:32:10 230

原创 「智造」智能制造模具篇 之 冲压模(复合模、连续模、翻边模、铸件模)

本文详细对比了四种模具:复合模、连续模、翻边模和铸件模。复合模和连续模都属于冲压模具,前者在单工位同步完成多工序,适合高精度平板类零件;后者通过多工位顺序加工,适合大批量复杂钣金件。翻边模是单一功能的成形模,常用于冲压工艺中的翻边工序。铸件模则用于铸造工艺,处理熔融金属,适合复杂形状零件。四者在工艺类型、材料状态、生产效率和应用场景上存在显著差异。

2025-09-24 21:30:21 1364

原创 「UG/NX」常用命令对应ID号

本文整理了NX软件常用命令的中文名称、ID号与英文命令对照表,涵盖建模、草图、曲线、测量、编辑和视图操作六大类功能。建模部分包括块、圆柱体、拉伸、孔等基础特征;草图部分包含轮廓、直线、修剪等绘图工具;曲线部分列出基本曲线、样条、投影等命令;测量功能提供距离、角度、几何属性等分析工具;编辑部分包含移动、变换、显示隐藏等操作;视图操作则收录了缩放、旋转、渲染样式等显示控制命令。该表可作为NX二次开发的快速参考手册,帮助开发者准确调用各功能命令。

2025-09-21 00:40:05 290

原创 「Math」运动学、动力学、铰链运动的对比

本文对比了运动学、动力学和铰链运动三个概念。运动学研究物体运动的几何描述(位置、速度等),不考虑力;动力学则关注力与运动的关系,解释运动原因;铰链运动是前两者的研究对象,指由关节连接的多体系统运动。文章通过机器人抓取瓶子的实例,说明三者如何协同工作:运动学规划路径,动力学计算所需扭矩,而整个机器人系统则展现铰链运动特性。最后用表格直观对比了三者的核心关注点、问题和应用场景。

2025-09-17 10:31:38 1161

原创 「Math」Bullet 物理引擎和 NVIDIA PhysX 物理引擎

本文对比分析了Bullet和NVIDIA PhysX两大物理引擎的核心特性及适用场景。Bullet作为开源引擎,以跨平台支持和丰富的功能集(刚体/软体动力学、碰撞检测)见长,广泛应用于游戏、影视特效和机器人仿真领域,其Sequential Impulse求解器稳定但性能略逊。PhysX凭借GPU加速和NVIDIA硬件深度集成,在游戏行业占据主导地位,特别擅长大规模粒子/布料模拟,闭源但提供工业级稳定性和调试工具。两者各具优势:Bullet适合需要高度定制化的开源项目,PhysX则更适合追求极致性能的3A游戏

2025-09-16 14:00:38 1260

原创 「Math」运动学中的欧拉角、四元数、矩阵与轴角

本文系统介绍了三维旋转的四种数学表示方法及其特性。旋转矩阵通过3x3正交矩阵实现向量变换,适合底层计算但存在冗余;欧拉角以三角度值直观描述旋转,但存在万向节死锁问题;轴角表示法用旋转轴和角度更本质地表达旋转;四元数作为最优方案,兼具紧凑性、无奇异性及运算高效的特点,成为计算机图形学和机器人学中的首选。各方法根据应用场景互补使用,其中欧拉角适合人机交互,四元数适用于复杂计算和插值,旋转矩阵则作为基础运算工具。理解这些表示法的优劣对三维空间姿态处理至关重要。(149字)

2025-09-15 11:34:31 1440

原创 「Win」窗口退出 之 PostQuitMessage(0) 和 SendMessage(WM_CLOSE)

本文详细解析了Windows编程中PostQuitMessage(0)和SendMessage(WM_CLOSE)两个关键函数的区别。PostQuitMessage(0)向当前线程消息队列投递WM_QUIT消息,用于退出消息循环;而SendMessage(WM_CLOSE)则向指定窗口发送关闭消息,触发窗口关闭流程。文章通过代码示例对比了两者的工作流程,并列出使用场景:前者适合程序退出,后者用于窗口关闭。最后强调标准退出流程应在WM_DESTROY中调用PostQuitMessage(0),而窗口关闭处理应

2025-09-12 14:50:50 1287

原创 「QT」主程序类 之 QApplication 应用程序的控制流

本文深入解析了Qt框架中的核心类QApplication,它作为GUI应用程序的控制中枢,承担着事件处理、信号槽管理和系统交互等关键功能。文章首先介绍了QApplication的基本结构(必须包含一个QApplication对象)和继承体系(QObject→QGuiApplication→QCoreApplication→QApplication)。接着详细剖析了其核心功能:事件循环机制(包括exec()执行流程)和信号槽连接管理(支持全局信号连接)。最后重点讲解了QApplication的关键特性,包括应

2025-09-12 11:49:31 1113

原创 「C/C++」C/C++经验篇 之 pch.h 预编译头

pch.h作为预编译头文件,能够显著提升大型C++项目的编译效率。它通过预先编译常用头文件(如STL、第三方库和项目公共头文件),避免重复解析,使编译速度提升50-90%。使用时需将pch.h作为源文件的首个包含项,并注意仅包含稳定、通用的内容。现代构建工具如CMake和VS都提供预编译头支持,合理配置可大幅优化开发体验。

2025-09-11 17:51:36 1085

原创 「C/C++」C/C++经验篇 之 头文件预编译头 vs 直接包含

本文对比分析了C++项目中预编译头(PCH)与直接包含两种头文件管理策略的优劣,并给出推荐方案。预编译头适合包含稳定标准库、第三方库和项目基础头文件,能显著提升编译速度;直接包含则适用于业务特定和频繁变化的头文件,保持灵活性。建议采用混合策略:在预编译头中放入稳定内容,业务头文件直接包含,并按模块组织包含顺序。这种方案在大型项目中能平衡编译性能和维护性。

2025-09-11 17:18:21 1301

原创 「C/C++」C/C++经验篇 之 引用头文件放头文件和源文件中好

本文介绍了C/C++头文件包含的最佳实践,核心原则是最小化头文件依赖。主要内容包括: 必须放在头文件的情况:继承、组合(成员对象)、函数参数/返回值中使用具体类。 优先放源文件的情况:使用指针/引用时采用前向声明,在实现文件中包含对应头文件。 优势分析:减少编译时间、降低耦合度、避免循环引用。 通过遵循"最小依赖原则",可以显著提升编译效率和代码模块化程度。建议开发者优先使用前向声明,仅在必要时才在头文件中包含其他头文件。

2025-08-30 17:22:26 1322

原创 「UG/NX」NXOpen篇 之 特征篇 BlockFeatureBuilder 块特征

本文详细解析NXOpen API中的BlockFeatureBuilder类,该构建器用于在NX软件中创建立方体特征。文章从类定义、创建方式入手,重点阐述其核心功能:提供三种创建方式(原点边长、两点高度、对角点),完善的几何参数管理系统(尺寸、位置、方向控制),布尔运算集成以及关联性控制机制。通过版本演进分析展示了功能增强历程,并附有典型使用示例代码。作为NX实体建模的重要组件,BlockFeatureBuilder为参数化设计提供了强大支持。

2025-08-26 15:02:54 242

原创 「UG/NX」NXOpen篇 之 智能对象集 XformCollection 变换矩阵

NX Open C++ API中的XformCollection类提供了丰富的坐标变换功能,支持通过几何元素、现有坐标系、装配组件等多种方式创建变换矩阵。主要功能包括:基础创建(原点+方向向量)、基于面/线/点构建坐标系、装配相关变换(组件上下文、爆炸图)、运动仿真变换(平移/旋转)以及高级操作(法向反转、动态操纵等)。该类继承自TaggedObjectCollection,支持迭代器遍历,是NX二次开发中实现坐标系变换的核心工具,广泛应用于建模、装配和运动仿真等场景。

2025-08-26 08:00:00 236

原创 「UG/NX」NXOpen篇 之 智能对象集 ScalarCollection 标量对象

"# NX Open API 标量管理类 ScalarCollection 解析" 摘要 ScalarCollection 是 Siemens NX Open API 中用于管理标量参数的集合类,支持参数化设计功能。该类实现了集合模式、工厂模式和迭代器模式,提供多种创建标量对象的方法,包括基础数值标量、表达式驱动标量、倒数标量等。核心特性包括量纲类型支持(长度、角度等)、智能对象更新机制、参数关联和数学运算能力,是NX参数化设计的重要组成部分。通过该集合类,开发者可以方便地创建和管理用于

2025-08-25 19:26:06 252

原创 「UG/NX」NXOpen篇 之 智能对象集 PlaneCollection 智能平面

本文详细解析了NX Open API中的PlaneCollection类,这是一个用于创建和管理平面对象的集合类。文章从核心设计模式(集合、工厂、迭代器模式)出发,详细介绍了其迭代器实现、核心方法分类(基础平面创建、基准特征创建、高级创建等),以及关键技术特性(平面定义方式、类型枚举、参数化设计、智能对象特性)。最后通过代码示例演示了如何通过原点和法线创建平面,展现了该类在CAD系统参考几何元素管理中的重要作用。

2025-08-25 08:00:00 817

原创 「UG/NX」NXOpen篇 之 智能对象集 CurveCollection 智能曲线

本文介绍了NX Open API中的CurveCollection类,这是一个用于创建和管理曲线几何对象的集合类。主要内容包括: 类概述:CurveCollection是NX Open API的核心组件,用于管理各种曲线对象,如直线、圆弧、椭圆等。 核心功能: 实现了集合模式、工厂模式和迭代器模式 提供了多种创建曲线的方法 支持遍历所有曲线对象 主要方法: 直线创建:支持通过坐标点或点对象创建直线 圆弧创建:提供三点创建、矩阵定义和方向向量三种方式 椭圆/抛物线/双曲线创建:支持通过矩阵或方向向量定义 应用

2025-08-24 11:04:07 106

原创 「UG/NX」NXOpen篇 之 智能对象集 AxisCollection 智能轴

本文详细解析了Siemens NX Open API中的AxisCollection类,这是一个用于创建和管理轴对象的集合类。文章从设计模式、核心方法和关键技术特性三个方面进行阐述:1)采用集合模式、工厂模式和迭代器模式;2)提供三种创建轴的方式(通过点/方向、坐标、变换);3)重点分析了参数化与非参数化轴的区别、智能对象特性及更新选项限制。通过代码示例展示了如何创建参数化和非参数化轴对象,揭示了NX系统中轴对象由"点+方向向量"构成的数学定义,为CAD二次开发提供了重要参考。

2025-08-24 10:47:11 116

原创 「UG/NX」NXOpen篇 之 智能对象集 DirectionCollection 智能矢量

本文介绍了NX Open API中的DirectionCollection类,这是一个用于创建和管理方向对象的集合类。摘要要点如下: 类功能:专门创建和管理CAD系统中的方向对象,用于定义矢量、法线、切线等方向。 设计模式: 集合模式:作为方向对象容器 工厂模式:提供多种创建方法 迭代器模式:支持遍历操作 核心方法: 基础方向创建(通过原点和向量) 基于几何元素创建(曲线/边、曲面/面、圆锥曲线) 两点间方向创建 参数化方向创建(如曲线上的切线/法线) 应用场景:在NX二次开发中,用于参数化建模时定义各种方

2025-08-24 10:42:00 110

原创 「UG/NX」NXOpen篇 之 智能对象集PointCollection智能点

"PointCollection"是Siemens NX Open API中管理智能点对象的集合类,提供多种创建点的方法。该类采用集合模式、工厂模式和迭代器模式,包含枚举类型定义不同创建选项,实现STL风格的迭代器便于遍历。核心功能包括:通过坐标或参数直接创建点;在曲线上按绝对/相对位置创建点;在曲面上按UV参数创建点;以及创建曲线/曲面/平面之间的交点。该类体现了NX参数化设计理念,支持多种定位方式(距离、百分比、弧长等),是NX二次开发中处理点对象的核心工具。

2025-08-24 10:34:16 139

原创 「C/C++」C/C++番外篇 之 计算机加密算法

加密大量数据:首选AES(256位),资源受限或无AES硬件加速时考虑ChaCha20。数字证书/密钥交换:首选ECC(更高效),兼容性要求高时用RSA(2048位以上)。追求前向保密必须使用ECDH或DHE。数据完整性/密码存储:首选SHA-256或SHA-512。绝对避免使用MD5和SHA-1。总体趋势ECC正在取代RSASHA-3作为SHA-2的下一代补充,AES在对称加密领域保持统治地位。身份认证与密钥交换网站服务器将其RSA或ECC证书(包含公钥)发送给浏览器。浏览器验证证书真实性。

2025-08-21 09:58:59 1294

原创 「C/C++」C/C++编译篇 之 C++编译器字符集深度解析:Unicode与多字节字符集的全面对比

字符集(Character Set)是字符与数字编码的映射关系系统,它定义了计算机如何表示和存储文本数据。C++编译器处理字符集的方式直接影响程序的国际化支持能力。在C++开发中,理解字符集差异对构建国际化应用至关重要。统一使用UTF-8编码设置正确的编译器选项避免混合使用不同编码对文本处理使用现代C++特性多字节字符集仍存在于遗留系统中,但Unicode(特别是UTF-8)已成为现代C++开发的事实标准。正确理解和应用这些知识,可以避免大多数国际化文本处理问题。何曾参静谧的博客。

2025-08-06 11:05:49 942

原创 「C/C++」C/C++经验篇 之 头文件与源文件:同文件夹 vs 分文件夹存放之争

C++项目头文件(.h/.hpp)与源文件(.cpp)的组织方式主要有两种:同文件夹存放和分文件夹存放。同文件夹结构适合小型项目,开发便捷、维护直观,但难以适应大型项目;分文件夹结构(include/src分离)则更适合中大型项目,能清晰隔离接口与实现,便于库文件制作。实际选择需考量项目规模、团队人数、构建复杂度等因素。知名项目如Google Test采用同文件夹,而Boost、LLVM等则采用分文件夹。建议初创项目从同文件夹开始,当出现头文件被外部引用、目录文件过多等信号时再考虑拆分,或采用模块化混合方案

2025-08-05 21:54:33 1208

原创 「C/C++」C/C++编译篇 之 Debug和Release编译模式的区别

通过合理选择编译模式,可以在开发效率和运行性能之间取得最佳平衡。Release优化后可能直接计算为499500(等差数列求和)重新组织代码,使频繁执行的分支路径更高效。重新排列指令以更好地利用CPU流水线。

2025-08-05 11:48:14 1228

原创 「C/C++」C/C++经验篇之 使用宏来控制代码不同版本编译

本文介绍了在C/C++中使用宏控制不同版本代码编译的方法。主要内容包括:1)通过#define定义宏(如NXCOPY 75);2)使用#if、#ifdef等预处理指令实现条件编译;3)实际应用示例展示功能开关和平台特定代码的实现;4)宏定义的三种常见来源;5)最佳实践建议,如添加前缀、集中管理、文档化等。文章还提供了版本管理头文件的示例代码,帮助开发者有效管理多版本代码编译。完整内容可访问作者CSDN博客查看更多技术文章。

2025-08-05 09:29:50 573

空空如也

空空如也

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

TA关注的人

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