Как работает перехватчик версии Spring Boot 2.x (отображение обработчика)?

Вы могли бы написать это так, но ... я бы этого не сделал. Это запутанный код и не дает вам никаких преимуществ. Если вы этого хотите, потому что ваш истинный вариант использования имеет большое количество вложенных циклов, подумайте, что просто не делайте этого; это серьезный запах дизайна.

void nested_loop(const int levels, const int comparator, const int level = 0, const int accumulator = 0)
{
   if (level < levels) {
      for (int i = 0; i < 6; i++) {
         nested_loop(levels, comparator, level + 1, accumulator + i);
      }
   }
   else {
      if (accumulator == comparator) {   // your if (z+y+x==f)
         //do something
      }
   }
}

int main() {
   const int levels = 3;
   const int f = 42;

   nested_loop(levels, f);
}

Live demo .

0
задан gdk 18 March 2019 в 00:52
поделиться