相关疑难解决方法(0)

如何从交换机内部打破循环?

我正在写一些看起来像这样的代码:

while(true) {
    switch(msg->state) {
    case MSGTYPE: // ... 
        break;
    // ... more stuff ...
    case DONE:
        break; // **HERE, I want to break out of the loop itself**
    }
}
Run Code Online (Sandbox Code Playgroud)

有没有直接的方法呢?

我知道我可以使用一个标志,并通过在切换后放置一个条件中断来从循环中断.我只是想知道C++是否已经有了一些构造.

c++ syntax loops break switch-statement

108
推荐指数
9
解决办法
9万
查看次数

(Java)退出循环"远程"

我有一个Java程序基本上执行以下操作:

public static void main(String[] args)
{
  while(true)
  {
  // does stuff ...
  }
}
Run Code Online (Sandbox Code Playgroud)

无限循环是设计的 - 当单独留下时,程序将无限循环.在大多数情况下它工作正常.但是,有时候我想把程序用于维护,当我把它关闭时,我想确保它遍历循环中的所有代码然后退出.

我想知道什么是最好的解决方案.我想到的一个想法是做这样的事情:

public static void main(String[] args)
{
    File f = new File("C:\exit.txt");
    while(!f.exists())
    {
        // does stuff ...
    }
}
Run Code Online (Sandbox Code Playgroud)

这基本上允许我通过创建一个名为"exit.txt"的文件来优雅地离开循环.这对我的目的来说可能没问题,但我想知道是否有更好的替代方法.

java infinite-loop

7
推荐指数
1
解决办法
346
查看次数

标签 统计

break ×1

c++ ×1

infinite-loop ×1

java ×1

loops ×1

switch-statement ×1

syntax ×1