Информация об изменениях

Сообщение Re[2]: return void от 15.06.2023 17:01

Изменено 15.06.2023 17:02 pva

Re[2]: return void
Здравствуйте, CRT, Вы писали:

CRT>И чем это лучше чем

CRT>
CRT>void dispatch(Actions action) {
CRT>  switch (action) {
CRT>    case Actions::A: doActionA(); return;
CRT>    case Actions::B: doActionB(); return;
CRT>  }
CRT>}
CRT>
???

CRT>По-моему doActionA(); return; лучше чем return doActionA(); в плане ясности кода

Ну, выше вон отписались по поводу функциональности кода. Добавлю еще немного с колокольни codestyle.
Я в случае более одного выражения, упаковую их обычно в блок (чтобы был единый стиль если прийдется объявлять переменные внутри ветки). Приходится писать, как-то так:
void dispatch(Actions action) {
  switch (action) {
    case Actions::A: {
      doActionA();
      return;
    }
    case Actions::B: {
      doActionB();
      return;
    }
  }
}
Re[2]: return void
Здравствуйте, CRT, Вы писали:

CRT>И чем это лучше чем

CRT>
CRT>void dispatch(Actions action) {
CRT>  switch (action) {
CRT>    case Actions::A: doActionA(); return;
CRT>    case Actions::B: doActionB(); return;
CRT>  }
CRT>}
CRT>
???

CRT>По-моему doActionA(); return; лучше чем return doActionA(); в плане ясности кода

Ну, выше вон отписались по поводу функциональности кода. Добавлю еще немного с колокольни codestyle.
Я в случае более одного выражения, упаковую их обычно в блок (чтобы был единый стиль если прийдется объявлять переменные внутри ветки). Приходится писать, как-то так:
void dispatch(Actions action) {
  switch (action) {
    case Actions::A: {
      doActionA();
      return;
    }
    case Actions::B: {
      doActionB();
      return;
    }
  }
}


А если у нас веток 10+, то пока листаешь пару экранов — забываешь чего там в начале было. Память уже не та.