我有一个关于C / C ++代码的问题,如果它们用Java包装并在Java Applet中运行,在这种情况下它可以运行在任何操作系统上,还是只运行它的操作系统?
答案 0 :(得分:1)
这取决于C ++代码可移植的程度,但无论如何,如果没有一些工作,C ++代码将无法在不同平台上运行 - 您必须为每个目标构建特定于平台的本机代码版本平台。
Java代码没有此问题,因为JVM使您免受(大多数)平台依赖性的影响。
答案 1 :(得分:0)
如果我正确理解您的问题,那么您指的是使用Java中的JNI。在这种情况下,是的,C / C ++代码已经编译,因此只能在该平台上运行。
答案 2 :(得分:0)
至少,您必须为目标平台重新编译它。
关于需要做多少工作,这取决于你编写可移植代码的程度 - 用C或C ++编写的代码可以完全从可移植到的整个范围运行非便携式,或介于两者之间的任何地方。从Java / JNI中使用它不会改变它。