我正在尝试构建一个第三方库,它有一个在公共标题中定义为这样的函数
void reset(void* instance);以及在实施中
void reset(instance_type* instance) {
...
}我得到了一个相互冲突的类型编译器错误。从表面上看,这似乎是显而易见的原因。作者使用MSVC,而我使用gcc设置为C99标准--也许这就是为什么它在作者机器上工作?在我不想通过公共接口公开instance_type的约束条件下,我能做什么最小的修改才能让它构建呢?
发布于 2019-07-03 14:36:42
在我不想通过公共接口公开
instance_type的约束条件下,我能做什么最小的修改才能让它构建呢?
定义必须与标题中的声明一致。如果不希望在公共API中公开instance_type,则意味着修改定义以匹配标头:
void reset(void* _instance) {
instance_type* instance = _instance;
...
}https://stackoverflow.com/questions/56872425
复制相似问题