是否可以在编译时检查值?

6 c#

在编译时,C#中是否可以有某种检查列表以确保函数的参数是否为某些值?

例如,我可以在编译时检查此函数的参数是否始终大于10?

void SomeFunction(1); <---这里编译错误

Ani*_*Ani 6

看看代码合约.它非常强大; 它可以用于运行时检查和静态验证.此外,您可以将其配置为将未经证实的合同视为编译时警告/错误.

void SomeFunction(int number)
{
   Contract.Requires<ArgumentOutOfRangeException>(number > 10) 
   ...
}
Run Code Online (Sandbox Code Playgroud)