我遇到了以下用例,但找不到合适的解决方案。
有没有办法用条件 <
替换字符串“<”或“>”或 >
在if
条件?
例子:
string condition = "<";
if (10 condition 8) // Here I want to replace condition with <
{
// Some code
}
我不想这样做:
if ("<" == condition)
{
if (10 < 8)
{
}
}
else if (">" == condition)
{
if (10 > 10)
{
}
}
我的条件会在运行时发生变化。如果除上述之外,我只是在寻找一种简单的方法。
用例:用户将给出如下查询:
input: 10 > 9 => output: true
input: 10 < 7 => output: false
基本上我需要解析这个查询,因为我有这 3 个词(10、>、9)作为字符串,并且我想以某种方式将字符串“>”或“<”转换为实际符号 >
或 <
.
最佳答案
您可以通过 std::map
或 std::unordered_map< 将字符串映射到标准库比较器仿函数,例如
.std::less
/
关于c++ - 有没有办法在 ">"条件下用 > 替换字符串 'if'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37891001/