C ++ - 一种更有效的方法来解决循环参数中的列表

时间:2013-03-31 05:25:14

标签: c++ list while-loop arguments

正如标题所说。例如,你有一个char值[11]的值列表,你想循环遍历循环参数中的那个列表:

while(something not in values[])
{
    doSomething(omgwtfbbq)
}

但当然它在C ++中不起作用......或者我认为。至少'not'关键字不存在。

有人可以建议是否有溶剂吗?

2 个答案:

答案 0 :(得分:0)

您可以使用@Deepu建议的方式,但更简洁,更强大的解决方案是使用系统中存在的事件机制。在一个线程上,您将等待按键按下事件,在另一个线程上,您将拦截按键中断并分析数据。如果它包含所需的值,请指明按下键的事件。

答案 1 :(得分:0)

好的,所以问题解决了,但是在评论中回答我的人没有发表完整的答复,所以我会在这里发布答案。

将列表更改为向量vector<char> values[4]。然后使用Raymond Chen建议的查找功能:

while(find(values.begin(),values.end(),something)==values.end())
{
    doSomething(eatBananas)
}

如果Raymond Chen发表明确答复,我会标记他的。