我正在研究一个 dll,它包含一个应该能够表示从 32 到 126 的整数值的类型,称为“PByte”(用于可打印字节)。问题是我想保护用户不使用例如 1000 初始化类型。这不应该引发异常。它应该防止编译,就像 Visiual Studio 尝试用 256 初始化一个字节一样。类型在构造函数中初始化。
public PByte(int value)
{
/* if (value < 32 || value > 126)
throw new ArgumentException("\"" + value + "\" is an invalid value!"); */
this._value = value;
}
这个
PByte pb = new PByte(2000);
不应该是可编译的。