是否有任何同时使用C ++和Java的程序/软件?
如果是这样,他们如何相互沟通?
请理论和程序。
示例:假设我想使用Java applet或类似的东西运行C ++文件。
答案 0 :(得分:5)
Java Native Interface
Pro:从Java调用C ++库的快速方法,反之亦然。
Contra:您需要控制库以使其支持JNI。
从Java创建流程并通过输入和输出流与之通信
Pro:二进制文件在一个单独的线程中运行。二进制可以用任何允许基于命令行的输入和输出的编程语言实现。
Contra:数据交换是基于文本的。您只能使用taget应用程序通过命令行界面执行的操作。
让两个应用程序通过网络套接字进行通信
Pro:应用程序可以在任何支持网络套接字的技术中实现。您可以轻松地将组件移动到另一台计算机以提高可伸缩性。营销部门可以称之为“Cloud Powered”。
Contra:应用程序必须基于网络。即使在本地运行时,绕过OS的网络堆栈也会引入额外的延迟。必须采取安全措施,不允许未经授权的客户端连接到充当服务器的组件。