2008-12-01 198 views

回答

0

既然你没有的CFile的内部的视图(或不应该,如果它的正确封装的),你需要依靠API的“契约”上。换句话说,除非文件明确告诉你在某些情况下会发生什么,否则你不能依赖它。

即使您有源代码并且可以弄清楚,API规范是合同,任何未指定的内容都可以随时更改。这就是为什么一些软件开发人员对发布内部结构非常谨慎的原因之一,因为它可以被视为永远支持它们。

如果您确实想确保文件在异常后处于已知状态,则需要对该行为进行编码。这可以是这样的:

  • 在程序启动时备份文件(简单);或
  • 在每次保存操作前备份它(仍然比较简单);或
  • 在进行任何写入操作(复杂和缓慢)之前进行备份。
相关问题