在条件中评估字符串

时间:2013-08-07 20:29:49

标签: c++ qt

如何使用字符串来评估进入条件的数字?

string = "(t>=2 && t<5) || (t<1)";

int c = 0;
for(int t = 0; t < 10; t++){
    if(  {string} )
        c++;
}

3 个答案:

答案 0 :(得分:6)

如果是关于Qt,我会写一些类似

的内容
QScriptEngine e;
e.globalObject().setProperty("t", 123);

bool result = e.evaluate("(t>=2 && t<5) || (t<1)").toBool();

答案 1 :(得分:4)

如果你想要一种嵌入式脚本语言(你还没有给我们更广泛的背景知识),那么你可以试试几种。 Lua非常友好(我已经使用它并且很好)谷歌的V8 javascript引擎应该是非常好的c ++(我还没试过)。你也可以嵌入python但很多人不喜欢它的语法

答案 2 :(得分:-2)

据我所知,你不能用C ++做到这一点。