问题标签 [language-interoperability]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
221 浏览

java - 为什么 Scala 偶尔会退回到 Java 对象?

我几乎可以肯定以前有人问过这个问题,但我错过了找到它的正确词。

为什么 Scala 在 a 中处理我的输入Double,但在使用 a 时保留它?有没有办法防止这种行为,而是总是使用 Scala 类型?java.lang.DoubleSeq[Any]scala.DoubleSeq[AnyRef]

0 投票
2 回答
128 浏览

c - 如何创建一个接口来为 fortran 转换 ac 字符数组

我正在用 c 为 fortran 程序编写一个模块,我需要将一些字符串传递给 fortran 程序。我无法修改 fortran 代码,但可以编写自己的 fortran 代码来调用现有代码。我试过用谷歌搜索这个,有很多不同的方法写在我不理解的水平上。

c 字符串的长度是可变的(尽管它是在传递之前设置的)。fortran“字符串”被声明为字符*(*),所以我看不到字符数组需要填充的长度。这是一些代码片段,看看我需要做什么。

我正在编写的 c 函数:

我无法修改的 fortran 函数使用名称执行一些操作,然后为句柄设置一个值:

我认为最好的方法是创建一个单独的 c 函数,将 geom_name 解析为一些 fortran 将使用的内容,然后创建一个 fortran 函数来创建 fortran 字符串并将其传递给我无法更改的函数,但是我不知道该怎么做。有什么帮助吗?

0 投票
2 回答
191 浏览

c++ - 本机代码中的托管 dll(通过 com)。它是在进程中还是在进程 com 服务器中?

我需要在我的本机代码(c++)中使用托管动态链接库(c#)。我在这里找到了解决方案。( http://support.microsoft.com/kb/828736 )。

但困扰我的是..

1)在本机代码中使用的托管动态链接库是否通过 com 充当进程 com 服务器?. 如果是的话怎么可能?

2)如果不是,那么动态链接库如何在不被可执行文件携带的情况下充当外部进程com服务器。

0 投票
2 回答
449 浏览

c# - WCF HTTPBinding 的限制是什么?

我正在开发一个 .NET 应用程序(比如 A),它将与其他 .NET 应用程序(比如 B)对话。应用程序 A 将被 Java 应用程序(比如 X)使用。我目前正在使用 Apache Thrift。Thrift 非常棒,除了对 OOPS 特性的基本支持(例如重载和继承)。当然,我们可以按照我们想要的方式自定义 Thrift 编译器,因为它是一种开源技术。

我的一位朋友建议对应用程序 A 使用 WCF 并使用 WSHttpBinding。使用 Basic/WSHtppBinding 时 WCF 服务是否有任何限制其他限制继续进行?我想网络服务的限制适用于上述托管方式。请指导我。

0 投票
0 回答
273 浏览

c - 如何将 Fortran .inc 文件包含到 C 程序中

我有一个用 Fortran 编写的程序,一些变量是在.inc文件中定义的。我想从 Fortran 程序中调用自己编写的 C 函数,该函数必须对变量进行数据读写。我应该如何让 C 函数知道这个变量?我使用 gcc 和 gfortran 作为编译器。

0 投票
1 回答
246 浏览

c# - Passing objects interoperably - JavaBean to C#

Is there any library out there that will allow developers to pass objects from one language to another and then manipulate/change the objects and pass them back?

This would be a great and simple alternative to Messaging and XML systems out there. I read about Colors which seemed to be what I was searching for but from what I understand it hasn't been released yet.

In my Java application (or any language, but java for this example) I'd like to use something like:

Which would consume an object published by Python via GET.

So I'm guessing there would need to be a library for each language. No need for any external boilerplate strings/files (xml, json, csv, proto, etc etc) for configurations, etc. Just the library import...

0 投票
1 回答
368 浏览

c++ - C 和 C++ 中类型的互操作性

一个非常简单的问题:是否可以保证在同一系统上intC 与 C++int相同?

不用说,这当然是一个纯粹的理论问题。

C 和 C++ 标准使用相同的语言来定义基本类型。但是,尽管 Fortran 2003 清楚地表明

声明了一个与“伴侣 C 处理器”上的类型兼容的整数类型int,我在 C++ 标准中找不到任何这样的断言。Fortran 会提供比 C++ 更强大的 C 互操作性保证,这似乎很奇怪!

我能找到的最接近的是第 7.5 节 [dcl.link],C++11 标准的第 3 段,其中指出

每个实现都应提供与用 C 编程语言编写的函数的链接

但是这个小句子(对我来说)似乎不足以保证基本类型的兼容性。

C++ 标准中是否还有其他一些我忽略的语言可以保证这一点,或者它是否显然被认为是理所当然的,以至于没有人费心明确地说明它?

编辑:评论中的大卫施瓦茨指出,当我说“相同的系统”时,我并不精确。我真的指的是同一个“平台”,即硬件、操作系统、系统库等。当然,这确实是一个 ABI 问题。在引用的段落中,C++ 标准似乎想要表明您可以使用 调用 C 函数extern "C",但我不确定它是否提供了足够的其他保证?

0 投票
1 回答
1319 浏览

java - PHP如何处理三重加密的32字节密钥

道歉所有 - 加密新手 - 谷歌搜索了好几天,终于直接问了。

我需要使用 PHP 加密和解密 Java TripleDES“DESede/ECB/NoPadding”函数可读的数据。

在 Java 中有一个双倍长度的 32 个字符的密钥,例如“F4D5CBDF57FEEDCFA41FD6AFE7BCDFEA”,它被转换为字节并提供一个没有任何问题的加密结果。(我没有代码。)

在 PHP 中,当通过 mcrypt 尝试对三元组 ecb 函数调用使用相同的密钥时,会出现密钥长度错误,因为系统要求最多 24 个字符。

我需要对密钥做什么才能使 PHP 产生与 Java 相同的加密结果?

0 投票
2 回答
695 浏览

c++ - 是否可以通过函数地址从 lua 脚本调用任何主机 c/c++ 函数?

我已经编译了用 c/c++ 编写的控制台主机程序(我没有源代码)。宿主程序支持 lua 脚本(可能使用 lua 虚拟机)。宿主程序加载lua库

luaopen_base luaopen_table luaopen_string luaopen_math luaopen_debug

并允许重新加载所有 lua 脚本。

是否可以通过函数地址从 lua 脚本调用任何主机 c/c++ 函数(从主机程序中的外部调试器获取它们)?

在这种情况下,是否可以从 lua 加载任何 C/C++ 编译的库并调用其函数?

另一个论坛上的一个人为这个问题写了这段代码

任何想法如何在编译的主机程序中使用它?

0 投票
3 回答
11584 浏览

java - 如何将 Scala Array[Byte] 转换为 Java byte[]?

我有一个 Akka 应用程序,其中包含用 Scala 编写的演员和其他用 Java 编写的演员。在一种情况下,Scala Actor 编写了一个Array[Byte],我需要从 Java Actor 反序列化它。在这个用例中,我最终需要 Java 中的 String 表示形式,Array[Byte]这样也可以解决我的问题。

斯卡拉演员:

Java 演员: