2015-11-10 27 views
-3

我有功能的库,并且当用户输入一个给定字符串(即运行x(其中x是一个程序)。)在程序运行的功能。反正有运行一个字符串作为C++函数

完整的示例: 用户输入:“跑铬”

程序执行:运行器(Chrome) 我寻找答案,似乎我的谷歌搜索技巧都没有达到标准。

+3

目前还不清楚你是否想运行一个函数或程序。 – SergeyA

+1

C++没有这样的事情,但你的操作系统可能会这样。使用Unix,Windows或其他? – aschepler

+1

解析它并将其与与函数关联的关键字(一个'std :: map'或'std :: unordered_map')进行比较? – Downvoter

回答

1

不,这不是以C直接可能++。

C++不包括编译器作为语言的一部分。 Lisp和Java等,这些语言都可以使用这种自编程序。

用C++,你将不得不将用户输入转换成合适的源代码,调用一个编译器,运行程序,并读取其输出。

+0

完美的谢谢你,你会进一步建议我切换到任何一种语言?或者继续使用C++并运行相应的用户输入 – Xav

+0

这取决于。如果只有几个功能,则评论中建议的地图会更容易。如果你不信任用户,编译和运行他的代码并不是一个好主意。关于切换:调用编译器应该不是很困难,所以我没有看到切换的巨大优势。 Lisp是完全不同的顺便说一句。 – alain

0

我认为做的最好的事情是,如果语句中使用。除非你有很多功能,否则应该就够了。

if (input == "function1"){ 
    =function1; 
} 
else if (input == "function2"){ 
    function2; 
} 
相关问题