我刚在网上看到谷歌用的是swig。
有没有人用过它,告诉我它对我有帮助吗?
我的意思是为什么使用它,以及它如何让我的工作变得更好。
因为google正在使用它,所以它必须是好的
发布于 2010-06-16 10:25:24
仅仅因为有人使用了某件东西并不能使它变得好。那就是说我爱我的Swig。
我已经用它用Java语言和Python语言包装了C++库。它让我只需编写一次代码,就可以在其他语言中使用该代码。它以一种有意义且一致的方式转换API,这是不可低估的。简而言之,对于我们这些必须同时使用多种语言和多个库的人来说,这让他们的生活变得更容易。
发布于 2010-06-17 06:37:35
当用一种语言编写的程序需要调用用另一种语言编写的程序时,SWIG会生成所需的“胶水代码”。SWIG的运行假设是C/ C ++是一种最小的公分母,如果你想连接,比如说Python和Java,你必须通过C传递所有的信息。SWIG非常雄心勃勃,涵盖了大量的脚本语言,基本上提供了对C或C++的导入/导出。
具体如何使用SWIG因脚本语言的不同而有所不同,但总体思路是相同的:您描述一些C/C++头文件,SWIG生成从您最喜欢的脚本语言使用该头文件所需的胶水代码。将两种脚本语言连接在一起并不适合常见的用例,如果您没有遇到麻烦,我会感到惊讶。一个好的计划是只在两种语言之间交换不可变的数据。即使到那时,我也会为惊喜做好准备。
摘要: SWIG的设计目标是将C/C++库导出为多种脚本语言,但一次只能导出一种。在同一进程映像中运行两种不同的脚本语言可能比您预期的要困难。
https://stackoverflow.com/questions/3050316
复制相似问题