缺陷
缺陷的描述和示例
Polyspace® Bug Finder™ 缺陷是标识特定的编码错误或漏洞的分析结果。请参考以下缺陷类别来理解您的结果。
类别
- 数值缺陷
与数值编码错误相关的缺陷,如除以零、类型转换、负移位运算、数学标准库等
- 静态内存缺陷
与静态内存编码错误相关的缺陷,如数组访问越界、空指针、标准内存和字符串库等
- 动态内存缺陷
与动态内存编码错误相关的缺陷,如悬空指针、内存泄漏、无保护内存等
- 数据流缺陷
与数据流编码错误相关的缺陷,如不可达代码、未初始化、缺少返回语句、无用的写入等
- 资源管理缺陷
与资源处理相关的缺陷,例如,未关闭的文件流或使用已关闭的文件流
- 编程缺陷
与编程编码错误相关的缺陷,如赋值与相等运算符、类型不匹配、绕回问题、字符串数组等
- 面向对象的缺陷
与 C++ 面向对象的编程相关的缺陷,例如,类设计问题或继承层次结构中的问题
- C++ 异常缺陷
与 C++ 异常及其处理相关的缺陷,例如,noexcept
函数中未处理的异常,或由throw
语句引发的意外异常
- 并发性缺陷
与多任务处理代码相关的缺陷
- 安全缺陷
与安全弱点和漏洞相关的缺陷
- 加密缺陷
与 OpenSSL 加密例程用法不正确相关的缺陷
- 被污染的数据缺陷
与来自不安全来源的代码元素相关的缺陷
- 良好做法缺陷
通过这些缺陷,您可以了解良好的编码做法,例如,检测硬编码的内存缓冲区大小或未使用的函数参数
- 性能缺陷
影响 C++ 代码性能的缺陷
- 库误用缺陷
与库使用(例如基于 Polyspace Test™ xUnit 的 API)不正确相关的缺陷