Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/135.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 需要:软件系统用户的编译工具_C++ - Fatal编程技术网

C++ 需要:软件系统用户的编译工具

C++ 需要:软件系统用户的编译工具,c++,C++,我不确定这个问题的标题是否切中要害。我在Windows C++中编写了一个大型的软件系统,希望给系统的用户提供编译代码的选择。用户应该能够做基本的事情,并与我的程序交换数据 目前的实现方式是通过DLL。但要做到这一点,需要一个成熟的编译器,而这并不像我希望的那么容易。有没有可以创建Windows DLL的小型C编译器 另一个想法是Java本机接口。但这需要一个完整的Java系统在后台运行,在其中运行代码并不容易 你还有其他想法吗?有解释语言吗?(TCL和Lua被设计为扩展语言,但您几乎可以轻松地

我不确定这个问题的标题是否切中要害。我在Windows C++中编写了一个大型的软件系统,希望给系统的用户提供编译代码的选择。用户应该能够做基本的事情,并与我的程序交换数据

目前的实现方式是通过DLL。但要做到这一点,需要一个成熟的编译器,而这并不像我希望的那么容易。有没有可以创建Windows DLL的小型C编译器

另一个想法是Java本机接口。但这需要一个完整的Java系统在后台运行,在其中运行代码并不容易


你还有其他想法吗?

有解释语言吗?(TCL和Lua被设计为扩展语言,但您几乎可以轻松地与任何其他语言进行接口)。

python集成如何

您可以创建一个与应用程序接口的python接口。Python很容易学习,应该很容易与c/c++集成

您还可以使用类似的工具来生成接口


这样做的好处是他们不必编译任何东西。他们可以提供python文件,这些文件可以加载到您的应用程序中并在软件中运行。这是python的一个众所周知的用法,它的简单语法促进了这一点。

正如另一位所说,通过提供嵌入式语言,您将获得最佳效果

我会加入javascript并使用 通过使用javascript,您可以获得一种几乎人人都能使用和编程的语言。 还有其他类似的javascript引擎可以嵌入。
要选择什么,请参见此。

解释语言不够好。我需要速度。软件本身是一种解释语言。所以我增加了对微型C编译器的支持。这只是C,我检查了mingw,它可能不会像这个那么小。谢谢你的提示

几个月后添加:


实际上,我现在有两个工具:TinyC和Python。两者之间的速度差异是明显的(系数5-10),但这通常并不重要。Python对用户来说要容易得多,尽管我成功地将两者很好地集成到Euler GUI中。

其中一种方法是添加脚本。您的应用程序可以托管脚本环境并在那里公开其服务。用户将能够执行JScript/VBScript脚本并与应用程序交互。其优点是,只要付出合理的努力,您就可以在应用程序中使用众所周知、文档丰富的脚本语言(我想这里甚至有用于脚本编写的调试器)。您将需要将应用程序服务作为COM接口来定义,而脚本将能够使用C++侧分配的方法名称自动访问它们。

听起来像是lua、python或ruby之类的嵌入式语言会有所帮助。对于最小的c/c++编译器,可以看看mingw。我会选择lua。语法似乎比TCL好得多,而且很容易沙盒化。网络上有大量的社区支持和示例代码。快速、安全、简单。