Интересное поведение наблюдается, если в блоке using используется нулевой объект: using(null){...}. Казалось бы, очевидно, у нас должно возникнуть исключение NullReferenceException при попытке вызвать метод Dispose нулевого объекта (null object), как только мы выйдем за пределы блока using:
using ((IDisposable)null)
{
}
// Исключения NullReferenceException не будет.
// Метод Dispose вызван не будет.
Рассмотрим довольно распространенную конструкцию: Допустим, есть класс Some, реализующий интерфейс IDisposable Read more: HANDCODE
using ((IDisposable)null)
{
}
// Исключения NullReferenceException не будет.
// Метод Dispose вызван не будет.
Рассмотрим довольно распространенную конструкцию: Допустим, есть класс Some, реализующий интерфейс IDisposable Read more: HANDCODE
0 comments:
Post a Comment