c++ - 修改已编译的静态库

标签 c++ objective-c c ios xcode

戴上你的 C++ 忍者巫毒手套。

我们购买了第 3 方库以在我们的 iOS 应用中使用。该库有 2 个版本,我们称它们为 bull_frog_noises.atoad_frog_noises.a

该公司从未想过有人会想在一个应用程序中制作两种 Frog 声音,因此每个库都提供相同的方法名称 :

MAKE_FROG_NOISE();

有没有办法重建或修改这些库,使它们都可以使用而不会相互冲突?这是理想状态:

MAKE_BULL_FROG_NOISE();
MAKE_TOAD_FROG_NOISE();

最佳答案

我会尝试使用十六进制编辑器手动修改其中一个库,以便 MAKE_FROG_NOISE 的每个实例都替换为 MAKE_TOAD_NOISE。您必须非常小心才能仅进行一项更改。您只能替换字节。不要插入或删除任何东西。并且不要更改文件中的任何其他内容。

关于c++ - 修改已编译的静态库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10036733/

相关文章:

c++ - 用于 AVX 和 SSE 的 visual studio 的 cpu 调度程序

c++ - C++中的F(string)是什么意思?

c++ - 如何从 ltrace 获取 C++ 堆分配的虚拟方法名称?

iOS:NSString 与 C malloc 的错误和崩溃

c - 如何在C中不使用分号打印 "Hello"?

c - == 用于指针比较

c - 不可能的事情发生了!这是什么意思?

c++ - 你能把QWidgets放到栈上吗?

objective-c - 自动释放的对象什么时候真正释放?

objective-c - 在 iOS 中实现一个简单的折线图