确保自己不使用已处理的类有什么意义吗?我只是咳嗽了一下,在我的IDisposable
课程的所有方法中添加了以下两行:
if (disposed)
throw new InvalidOperationException("Attempt to use disposed object!");
这似乎不对。
最佳答案
我最好的回答是看情况而定。
一次性类是否只在单个项目中使用?
可能没有(尽管同样效果的断言可能并不坏)
这个班是你以外的人用的还是一个小组用的?
可能是的
访问已释放对象的副作用是什么?
如果它不抛出例外,以上将使你的生活
更容易调试,但在大多数情况下最终结果是相同的
如果它能正常工作(即重新分配任何必要的资源等),那么谁会真正关心
如果它将导致未定义或不可预测的行为,而这些行为不会引发异常,则应明确,尤其是如果您对上述问题回答了“否”和“是”