【发布时间】:2013-05-28 02:34:21
【问题描述】:
我有一些现有的 C++ 代码可以在独立的 C++ 应用程序中进行数值处理。我现在想在新的 node.js 应用程序中使用该代码。
研究如何从node.js访问C++代码,有两个选择:
- 编写 node.js 扩展
- 使用node-ffi
node-ffi 似乎是访问现有 libraries 的好选择,但我是否正确地认为如果我使用 node-ffi 我必须编写一个 C 包装器以使我的 C++ 可访问? (这是我在 Windows 上使用 Visual Studio 获得简单测试用例的唯一方法)。
对于我的源代码已经是 C++ 而不是 C 的情况,在上述两个选项之间进行选择时有哪些注意事项?
【问题讨论】:
-
你的代码中是否大量使用了继承、虚函数和模板
-
没有模板。没有虚函数。一些继承,尽管如果需要我可以修改代码以避免这种情况。
-
我认为编写包装器比编写包装器相对容易
-
我同意,编写包装器并不难。我想知道我是否需要为node-ffi编写包装器,以及这是否比编写节点扩展更好。
-
看起来您不必这样做,从我刚刚阅读的内容来看,您甚至可以使其与objective c一起使用
标签: c++ node.js node.js-addon node-ffi