C++ 语言代码大小 - 2023.2 简体中文

Vitis 统一软件平台文档 嵌入式软件开发 (UG1400)

Document ID
UG1400
Release Date
2023-12-13
Version
2023.2 简体中文

GCC 工具链与最新开源 C++ 标准库 (libstdc++-v3) 相结合所生成的代码和数据片段比等效的 C 语言程序所生成的代码和数据片段要大得多。此开销中大部分来自用于异常处理和运行时类型信息的代码和数据。部分 C++ 应用不需要这些特性。

要去除此开销并优化大小,请使用 -fno-exceptions 和/或 -fno-rtti 开关。建议仅限了解自己的应用需求并了解这些语言特性的高级用户才能使用此操作。请参阅 GCC 文档以了解有关可用编译器选项及其影响的具体信息。

C++ 程序由于具有更为复杂的语言特性和库例程,因此具有更密集的动态存储器要求(堆和栈大小)。许多 C++ 库例程都能请求从堆分配存储器。请复查您的 C++ 程序堆栈大小要求,确保可满足这些要求。