java - 我可以通过字符串编译 C++ 源代码吗?

标签 java c++ compilation

我知道 java 源代码可以使用 JavaCompiler 通过字符串编译。使用包含我的 Java 代码的长字符串,我可以测试我的代码是否可编译。

来源:http://docs.oracle.com/javase/6/docs/api/javax/tools/JavaCompiler.html

一个例子:http://www.java2s.com/Code/Java/JDK-6/CompileaJavafilewithJavaCompiler.htm

我的问题是:我有一个包含可编译 C++ 代码的长字符串。我可以使用某种形式的 Java 库做类似的事情吗?还是根本不可能?

谢谢

编辑 1:根据要求,字符串可以由用户生成(在 GUI - JTextArea 中键入)或从 .cpp 文件中读取。

最佳答案

如果您使用的是 VisualStudio,则可以使用预构建事件来调用 C++ 编译器并编译文件。如果出现错误,您的 Java 项目将不会构建。这里的想法是让事件发生在构建之前。您可以随心所欲地创建该事件,例如,检查文件是否编译,

这是一个教程:https://dillieodigital.wordpress.com/2012/11/27/quick-tip-aborting-builds-in-visual-studio-based-on-file-contents/

在他输入要运行的脚本的部分,您可以在此处调用您最喜欢的 C++ 编译器。他不是在检查同一类型的文件,但原理是一样的,他在检查一个文件。

如果您正在运行 Windows,如果您正在使用 VisualStudio,那么下面的内容将会有所帮助。

在命令行上编译原生 C++ 程序: https://msdn.microsoft.com/en-us/library/ms235639.aspx

基本上,您是在让 VisualStudio 项目执行预构建事件,即在构建 Java 项目之前通过命令行调用 C++ 编译器来检查您的文件。

希望对您有所帮助。

关于java - 我可以通过字符串编译 C++ 源代码吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31195989/

相关文章:

Java toString() 打印问题

javascript - 无法让这些脚本协同工作

java - 使用 gcc 通过 javacode 编译 C 源代码

go - golang 的垃圾收集器在编译时是如何工作的?

Java Swing 。绘画组件

java - 在 z/OS OMVS 中安装 JAVA 7.1 版本后,出现以下错误

java - JRootPane.getName() 返回 Null?

C++:如何在使用 libcurl 的 Windows 中运行可执行文件?

c++ - 查看一步步执行

c++ - 如何在 BCB XE 中将十六进制字符串编码为整数