.NET 4.x Параметр при передаче в метод - C#

Узнай цену своей работы

Формулировка задачи:

Есть метод. Обзовём его GetBox. На входе принимает параметр, который может быть, а может и не быть
Листинг программы
  1. public bool GetBox(bool reserved = true)
  2. {
  3. if(reserved) {...}
  4. ...
  5. Calculate(reserved)
  6. ...
  7. }
  8. private void Calculate(bool isReserved) {...}
Далее где-то в коде:
Листинг программы
  1. bool calculated = GetBox(false);
  2. //или
  3. bool isReallyCalculated = GetBox();
В связи с появлением различных "сладостей" в виде параметров по-умолчанию, сам Троелсен ))) прям велел запихнуть bool reserved = true. Но, сталкивался с огромным морем современного кода, где нет параметров по-умолчанию. В связи с этим вопрос: если я точно знаю что параметр может иметь дефолтное значение, стоит ли делать ему присвоение прям в инициализации метода (что значимый тип, что ссылочный)? Или же лучше убрать это, и тогда в коде явно будет видно что

параметр нужно задать

.
Опять же, метод может иметь несколько дефолтных параметров. И тогда всё ещё нагляднее вроде получается:
Листинг программы
  1. ///Тут полноценный comment что там и к чему
  2. public bool CalculateBox(bool reserved = true, MyClass myClass = null)
  3. {
  4. ...
  5. }
  6.  
  7. bool isReallyReallyCalculated = CalculateBox(myClass: someInnerClass);

Решение задачи: «.NET 4.x Параметр при передаче в метод»

textual
Листинг программы
  1. private void GetSomeCoffee(Sugar sugar, Milk milk, bool сПенкой, bool сКоричкой) {...}
  2. GetSomeCoffee(sugar, null, true, false);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы