メソッドの入力の正当性を検証する方法があるのだろうか?私は簡単に後でこれを行うことができ、エラーを投げることができますが、コンパイル時にうまくいくと思います。代わりにC#メソッドは最大値を持っていますか?すなわち、Size(int x <40、int y <80)?
CursorPosition(int x, int y)
{
if (x >= 80) { Console.WriteLine("off screen"); }
if (y >= 24) { Console.WriteLine("off screen"); }
}
の
は、私はちょうどそれがここで行われ、コンパイラがバックし、エラーをスロー持っていませんでしたか?
CursorPosition(int x < 80, y < 24)
{
// do stuff
}
ありがとうございます!タイプが値に依存しているため、いわゆる -
コード契約を使用することができます。 – Dai
身体に行かずにパラメータを渡すときの状態を確認しますか? –
非常によく似た質問ですが、パラメータが確実にnon-nullであることに重点を置いていますが、[メソッドのパラメータを自動的にテストし、.net/VSのArgumentNullExceptionをスローするツール](https://stackoverflow.com/q/5419408/ 150605) – BACON