0

如果传递给它的参数为空,则ArgumentNullException会引发异常。这发生在运行时。Contract.Requires是做什么的?是编译时检查还是运行时检查?

4

1 回答 1

1

Contract.Requires是运行时检查(运行时检查在编译时自动生成 - 请参阅文档的第 6.2 章和第 7 章)。也可以执行某些静态检查(参见文档的第 6.6 章),但Requires它是运行时检查。

请注意,有一个通用重载可以让您指定要抛出的异常(例如,ArgumentNullException)

于 2013-04-14T22:30:00.340 回答