c++
一只小小汤圆
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
c++强制类型转换
最危险的转换,用于完全不相关类型之间的低级转换(如指针转整数、不同类型指针互转)最常用的转换,用于相关类型之间的转换(如数值类型、有继承关系的类指针)用于多态类型(有虚函数的类)之间的安全转换,会在运行时检查类型安全。用于添加或移除const/volatile限定符。原创 2025-12-28 21:49:43 · 414 阅读 · 0 评论 -
简化点的多种方法
每条线段周围建立一个“误差带”(±tolerance)只保留与上一个保留点距离 ≥ min_dist 的点。固定起点,沿路径向前找第一个超出垂直距离阈值的点。从当前点出发,尝试用一条线段连接后续第 n 个点。按面积从小到大删除点,直到满足数量或精度要求。若距离 > 阈值,则保留该点,递归处理两侧。如果所有中间点都在误差范围内,则删除中间点。支持设定最大偏差(如 ±0.1mm)计算每个点与其前后点构成的三角形面积。后续点只要在带内,就认为可忽略。面积越小,说明该点越“不重要”递归找出离当前线段最远的点。原创 2025-11-27 13:46:05 · 370 阅读 · 0 评论 -
简化点集合 道格拉斯-普克算法(Douglas-Peucker Algorithm)
【代码】简化点集合 道格拉斯-普克算法(Douglas-Peucker Algorithm)原创 2025-11-27 11:57:10 · 117 阅读 · 0 评论 -
c++ 的svg文件解析库
激光切割图纸(如.svg路径)UI 界面设计CAD 导出/导入Web 图形用 C++ 解析.svg文件 → 提取路径、坐标、变换等信息 → 用于轨迹生成或渲染库名推荐度适用场景NanoSVG⭐⭐⭐⭐⭐路径提取、GCode 生成⭐⭐⭐⭐渲染、完整 SVG 支持Qt SVG⭐⭐⭐⭐Qt 桌面应用其他⭐⭐不推荐。原创 2025-11-26 13:28:36 · 598 阅读 · 0 评论 -
C++中获取文件名的后缀
路径处理:若输入可能包含路径,需先提取文件名部分。边界条件文件名以点开头(如.bashrc)通常视为无扩展名。最后一个点号在末尾(如file.)返回空。多后缀处理:如tar.gz,通常取最后一个点后的内容(gz根据需求选择方法,优先使用标准库以获得更高的可靠性。原创 2025-03-27 22:36:09 · 580 阅读 · 0 评论 -
c++ 子类继承父类 父类中的变量子类在构造的时候如何初始化
在 C++ 中,当子类(派生类)继承父类(基类)时,。子类在构造时,可以通过调用父类的构造函数,确保父类的成员正确初始化。原创 2025-03-14 09:30:00 · 477 阅读 · 0 评论 -
c++ 中的float和double 的区别 开发过程中使用哪个更好
在 C++ 中,float和double都是用于表示浮点数的数据类型,但它们在方面有所不同。floatdoubledoublefloatdouble选择哪个取决于你的。原创 2025-03-13 22:32:10 · 686 阅读 · 0 评论 -
对std::map<int, double>中 找到doule 最小的元素
直接调用标准库算法,结合 Lambda 表达式比较double#include <algorithm> // 需要包含此头文件{1, 3.14},{4, 0.0}return 0;// 使用 min_element 和 Lambda 比较 double 值// 比较 double 值std::cout << "最小值的键: " << min_it->first<< ", 值: " << min_it->second << std::endl;return 0;原创 2025-03-05 20:46:41 · 382 阅读 · 0 评论 -
c++ std::tuple用法
向。原创 2025-03-05 20:35:17 · 713 阅读 · 0 评论 -
opencascade BRepTools::Read写到string内 BRepTools::Write
【代码】opencascade BRepTools::Read写到string内 BRepTools::Write。原创 2025-02-26 22:24:00 · 719 阅读 · 0 评论 -
以绘图(绘制点、直线、圆、椭圆、多段线)为例子 通过设计模式中的命令模式实现
为了在命令模式的基础上实现撤销(Undo)和回退(Redo)功能,我们可以在每个命令类中记录一些必要的状态,允许我们撤销之前的操作,并在需要时回退操作。常见的做法是使用一个命令堆栈来存储历史命令,并为每个命令提供撤销(undo)操作。原创 2025-02-25 22:36:55 · 563 阅读 · 0 评论 -
POCO库 windows cmake和vs的下载和编译
cmake编译。原创 2025-02-14 10:32:17 · 341 阅读 · 0 评论 -
opencascade 标注-直线标注、半径标准、角度标注
重写。原创 2025-02-13 17:03:13 · 2036 阅读 · 0 评论 -
在cam套料软件中,我想用c++通过xml序列化的方法设置工程文件并打开和保存相关的几何信息,其中几何信息有点、直线、圆、圆弧,最后用c++方法加密现有工程文件
序列化可以选择二进制、XML、JSON 或自定义文本格式。原创 2025-02-12 16:59:28 · 847 阅读 · 0 评论 -
在cam套料软件中,我想用c++通过序列化的方法设置工程文件并打开和保存相关的几何信息,其中几何信息有点、直线、圆、圆弧
序列化可以选择二进制、XML、JSON 或自定义文本格式。原创 2025-02-12 15:49:10 · 535 阅读 · 0 评论 -
编译笔记:vs c++ 编辑【报错记录】C4996 This function or variable may be unsafe
解决C4996: ‘fopen’:this function or variable may be unsafe先关问题的方法。右击工程——>属性——>C/C++——>预处理器——>预处理器定义。原创 2024-12-23 21:30:36 · 281 阅读 · 0 评论 -
编译笔记:vs 中 正在从以下位置***加载符号 C# 中捕获C/C++抛出的异常
在需要捕捉破坏性异常的函数外面加一个HandleProcessCorruptedStateExceptions属性,这个属性只控制一个函数,对托管程序的其他函数没有影响。进入VS—工具—选项----调试----符号,看右边有个“Microsoft符号服务器”,将前面的勾去掉,(可能还有删除下面的那个缓存)。C# 中捕获C/C++抛出的异常。原创 2024-12-23 15:58:47 · 615 阅读 · 0 评论 -
C语言的泛型
}\ }转载 2024-11-18 11:49:43 · 100 阅读 · 0 评论 -
c++多线程处理数据
在C++中处理大量数据时,可以使用多线程来提高处理速度。以下是一个简单的例子,展示了如何使用std::thread来并行处理数据集。在C++中,创建一个有返回值的线程可以使用std::future和std::packaged_task。原创 2024-10-31 09:50:47 · 521 阅读 · 0 评论 -
c++ string 识别标志位并解析标志位后面的字符
正则表达式和iterator的配合应用。解析字符串中的固定标志位。原创 2024-10-29 11:01:28 · 171 阅读 · 0 评论 -
c++map 查找元素和list查找元素速度对比
如果你想比较这两种容器在查找元素上的速度,通常std::map会比std::list快得多。因为std::map的查找操作是平均常数时间复杂度,即O(log n),而std::list的查找操作是线性时间复杂度,即O(n)。在上面的代码中,我们分别在std::map和std::list中查找了一个元素,并记录了查找所需的时间。在C++中,std::map和std::list是两种不同的容器类型,前者是基于红黑树实现的关联容器,后者是双向链表。原创 2024-10-11 09:14:42 · 678 阅读 · 0 评论
分享