我来自 Linux 世界,知道很多关于维护用 C++ 语言编写的动态库 API 的向后二进制兼容性 (BC) 的文章。其中之一是“C++ 的策略/二进制兼容性问题” ,它基于GCC 编译器使用的Itanium C++ ABI 。但是对于 Microsoft C++ 编译器(来自 MSVC),我找不到任何类似的东西。
我了解大多数技术适用于 MS C++ 编译器,并且我想发现与 ABI 差异(v-table 布局、修改等)相关的编译器特定问题
所以,我的问题如下:
- 在维护 BC 时,你知道 MS C++ 和 GCC 编译器有什么区别吗?
- 我在哪里可以找到有关 MS C++ ABI 或有关在 Windows 中维护 API BC 的信息?
任何相关信息将不胜感激。
非常感谢你的帮助!