繁体   English   中英

从文本文件c ++将外部算法加载到程序中

[英]Loading external algorithms into program from text file c++

我正在开始一个项目,在我开始做出重大决定之前,我正在寻找一些指导。

该项目是一个网络模拟器。 基本上我会加载一个代表计算机网络的有向图。 期望网络运行算法以模拟整个网络的操作。 图上的每个单独节点将运行相同的算法。

例如:一个简单的泛洪算法,它从一个根节点开始,每个节点应该能够接收该消息,然后将其重新发送给它的邻居。

我的问题是为每个要运行的节点加载算法。 用户应该能够使用算法创建一个文本文件,并将其加载到我的程序中,以便每个节点单独运行。

文本文件可以是任何格式,但我相信如果它们被格式化为c ++函数将是最简单的。

我能提出的唯一想法是创建一个解析器来读取每一行。 这不仅难度很大,而且我认为由于大多数算法中存在循环而无法工作。

我愿意给出更详细的描述。

通常,如果要在文件中编写代码,则需要使用脚本语言。 Lua很受欢迎。

解析算法的文本文件的描述基本上就是创建自己的脚本语言(通常也是如此)。

也许你不需要一个完整的脚本语言,但至少,你需要一个特定域的语言 ,并且可能为此目的使用脚本语言(沙盒)。 Boost :: Spirit是一个用于直接在C ++代码中描述和嵌入特定于域的语言解析器的选项。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM