2014-09-26 51 views
0

我想通过为我的课程的用户提供一个BinaryWriter来让写作更加舒适,在处置时它会自动将其数据添加到某个内部队列中。挂钩到BinaryWriter的Dispose

为此,我想写一个BinaryWriter的子类并覆盖它的Dispose方法。但是,Dispose不是虚拟的。是否足够钩入Dispose(bool)?还是有更好的方法?

回答

5

BinaryWriter.Dispose()只包含

this.Dispose(true); 

所以首要Dispose(bool)将正常工作的电话。

+1

+1'Dispose()'只是'IDisposable.Dispose(bool)'的一个包装,它正是您想要覆盖的重载。注意'Dispose()'是公开的,用于外部代码消耗,'Dispose(bool)'是虚拟保护的。原因有点显而易见 – Leo 2014-09-26 03:49:49