首页 > 解决方案 > 如何在我的 c++ 文件中定义外部“C”函数?

问题描述

我有一个想要与 C++ 代码链接的 .so 库。add在 .so 文件上调用了一个尊重 C 接口的函数(它声明为 extern "C")。我没有 .h 文件,所以我做了类似的事情,但在 Android 上:

#include <iostream>

extern "C" int add(int, int);
//int add(int, int);

int main()
{
  std::cout << add(1,1) << std::endl;
}

如果我使用我会得到关于未声明extern "C" int add(int, int);函数的编译错误。add如果我使用int add(int, int);它编译但链接失败(但可能是由于其他原因)。

从 .so 定义外部 C 函数的正确方法是什么?

标签: androidc++

解决方案


推荐阅读