Является ли реализация дополнительных параметров C# 4 такой же, как VB.NET, необязательный параметр компилируется на сайте вызова (может вызвать проблемы с управлением версиями)?C# 4 необязательный параметр
ответ
Yes.
Согласно SamNg, C#'s default arguments are is compiled at the call site, аналогично параметрам по умолчанию в C++.
Да, это может привести к проблемам с версией. Однако необязательные параметры следует использовать там, где это имеет смысл. Во многих случаях это означает, что метод или конструктор передает null
или построенный по умолчанию класс.
FIXME: Кто такой Сэм Нг? Является ли он разработчиком M $? – strager
Я думаю, что все блоггеры на blogs.msdn.com являются сотрудниками MS (возможно, некоторые из них являются MVP?). –
- 1. Laravel 4 необязательный параметр
- 2. Необязательный C вопрос # параметр
- 3. C# 4 Необязательный Null EventHandler
- 4. Необязательный необязательный параметр
- 5. C# Необязательный параметр выбора параметров
- 6. Необязательный параметр в функции C#
- 7. необязательный параметр потока в C++
- 8. SQL необязательный параметр?
- 9. Scala: Необязательный параметр типа?
- 10. Как передать необязательный параметр методу в C++?
- 11. Как игнорировать необязательный параметр в C#
- 12. DBNull.Value как необязательный параметр
- 13. Необязательный параметр Sqldatareader
- 14. Как установить параметр по умолчанию или необязательный параметр в C#?
- 15. C# ODB.NET Необязательный параметр всегда DBNull
- 16. Сделать массив необязательный параметр для C++ функции
- 17. Интерфейс C#, единство и необязательный параметр
- 18. Необязательный параметр в C++ без перегрузки
- 19. C# 4.0 необязательный параметр out/ref
- 20. C++/Qt - Необязательный параметр по умолчанию NULL
- 21. Преобразование VB6 Необязательный параметр в C#
- 22. Как добавить необязательный параметр в Visual C#?
- 23. C# проходя необязательный параметр типа объекта
- 24. Необязательный параметр Index Route
- 25. Laravel route необязательный параметр
- 26. Необязательный параметр Python?
- 27. Экспресс js необязательный параметр
- 28. Необязательный параметр jDBI
- 29. Необязательный параметр типа несоответствие
- 30. Необязательный параметр Grunt
Это добавляет серьезную слабость к C#. Тот факт, что факультативный реализован на сайте вызова, а не как средство перегрузки, означает, что сборки, которые не построены друг против друга, не будут работать, если будет изменен дополнительный парматер. Я не понимаю, зачем нам это нужно. Перегрузка дает ту же функциональность, и подписи методов никогда не изменяются невидимо. – stevehipwell
Значение по умолчанию является частью определения функции. Изменение его так же плохо, как изменение имени функции. Это так же верно, когда по умолчанию выпекается в перегрузку, как при экспонировании через необязательный параметр. –