什么意思是循环?

时间:2013-12-09 19:18:52

标签: c++

在类的方法run()中使用以下代码中的变量bool subCycling_:

       bool Foam::Time::run() const
  810 {
  811     bool running = value() < (endTime_ - 0.5*deltaT_);
  812 
  813     if (!subCycling_) //bool subCycling_; //- Is the time currently being sub-cycled?
  814     {
  815         // only execute when the condition is no longer true
  816         // ie, when exiting the control loop
  817         if (!running && timeIndex_ != startTimeIndex_)
  818         {
  819             // Note, end() also calls an indirect start() as required
  820             functionObjects_.end();
  821         }
  822     }
  823 
  824     if (running)
  825     {
  826         if (!subCycling_)
  827         {
  828             const_cast<Time&>(*this).readModifiedObjects();
  829 
  830             if (timeIndex_ == startTimeIndex_)
  831             {
  832                 functionObjects_.start();
  833             }
  834             else
  835             {
  836                 functionObjects_.execute();
  837             }
  838         }
  839 
  840         // Update the "running" status following the
  841         // possible side-effects from functionObjects
  842         running = value() < (endTime_ - 0.5*deltaT_);
  843     }
  844 
  845     return running;
  846 }
  847 
  848 
  849 bool Foam::Time::loop()
  850 {
  851     bool running = run();
  852 
  853     if (running)
  854     {
  855         operator++();
  856     }
  857 
  858     return running;
  859 }

当我将子循环翻译成德语时,我仍然没有意义。 那么,什么意思是子循环[第813行]?这方面的例子很棒。

问候 streight

1 个答案:

答案 0 :(得分:1)

您必须询问编写代码的人。如果没有任何上下文,就不可能从这个微小的代码片段中随机地说出来。接下来的行中可能会有一个提示(因为那些是受此布尔值影响的行),但是你没有向我们展示那些。

然而,作为线索,一些定时器实现使用“子循环”来描述在主要事件循环的每个循环内运行定时器机制的重复迭代。这可以解决由个别等待条件引起的争用:

在运行机械设备的代码中经常发现它。