首页 文章
  • 3 votes
     answers
     views

    ABI兼容头/库交叉检查

    我一直在寻找ABI交叉检查工具 . 现在我遇到了其他问题中提出的一些工具,例如在这些问题中: How to test binary compatibility automatically? Static analysis tool to detect ABI breaks in C++ 现在,这不是我想要做的 - 因为这些跟踪版本之间的ABI变化 . 我想知道给定项目源文件库头文件和库.so文件,...
  • 201 votes
     answers
     views

    是什么导致java.lang.IncompatibleClassChangeError?

    当我尝试从中调用方法时,我'm packaging a Java library as a JAR, and it'抛出了很多 java.lang.IncompatibleClassChangeError . 这些错误似乎是随机出现的 . 什么类型的问题可能导致此错误?
  • 8 votes
     answers
     views

    默认构造函数和析构函数是否内联?

    我很好奇编译器生成的默认构造函数和析构函数是否内联,因为我可以证明它是正确的 . 一方面,您希望默认构造函数/析构函数不是内联的,以便稍后添加它们不会为每个分配的结构添加构造函数/析构函数调用,而在C中,假定类和结构之间唯一的功能差异成为默认的访问保护 . 也许链接器以某种方式解决这个问题也许答案因编译器而异? 这个问题的结果是:如果我在C中有一个POD结构,理论上我可以通过自己定义空内联构造函数...
  • 8 votes
     answers
     views

    为什么应用程序二进制接口对编程很重要

    我不明白为什么ABI是开发用户空间应用程序的重要环境 . 是否将操作系统的系统调用集视为ABI?但是,如果是这样,那么关于标准库中封装的系统调用的所有复杂性是不是都很复杂? 那么 ABI compatibility 仅与在不同平台上运行静态链接的应用程序相关,因为系统调用将嵌入到二进制文件中?

热门问题