35 lines
892 B
Markdown
35 lines
892 B
Markdown
|
|
---
|
||
|
|
id: VDE-029
|
||
|
|
status: fixed
|
||
|
|
severity: low
|
||
|
|
category: code-quality
|
||
|
|
date: 2026-07-28
|
||
|
|
reporter: ViewDesign
|
||
|
|
---
|
||
|
|
|
||
|
|
# VDE-029: class_a_surfacing.cpp `move` 变量可能未初始化
|
||
|
|
|
||
|
|
## 描述
|
||
|
|
在 ViewDesign MSVC 构建中,`vde_curves` 的 `class_a_surfacing.cpp` 产生 `-Wmaybe-uninitialized` 警告:
|
||
|
|
|
||
|
|
- 行 1443: `Vector3D move;` 声明但未被初始化
|
||
|
|
- 行 1445: 在 `curvature_continuity_optimization` 函数中使用 `move` 参与运算,编译器分析认为该变量部分路径可能未赋值
|
||
|
|
|
||
|
|
## 复现步骤
|
||
|
|
```
|
||
|
|
cmake --build build --config Release --target vde_curves
|
||
|
|
```
|
||
|
|
|
||
|
|
## 影响
|
||
|
|
- 代码整洁度问题,在实际执行路径中可能已被正确赋值
|
||
|
|
- 大量 Eigen 模板内联展开导致警告信息冗长
|
||
|
|
|
||
|
|
## 修复建议
|
||
|
|
将声明改为带默认初始化:
|
||
|
|
```cpp
|
||
|
|
Vector3D move = Vector3D::Zero();
|
||
|
|
```
|
||
|
|
|
||
|
|
## 相关文件
|
||
|
|
- `src/curves/class_a_surfacing.cpp:1443,1445`
|