Теперь у меня есть статический класс с набором методов, которые только предназначен для использования с перечислениями «флаги». Я не могу добавить это как ограничение... поэтому возможно, что они будут вызываться и с другими типами перечислений. В этом случае я хотел бы создать исключение, но я не уверен, какое из них выбросить.
Просто чтобы сделать это конкретным, если у меня есть что-то подобное :
Код: Выделить всё
// Returns a value with all bits set by any values
public static T GetBitMask() where T : struct, IEnumConstraint
{
if (!IsFlags()) // This method doesn't throw
{
throw new ???
}
// Normal work here
}
Я бы предпочел не создавать для этого собственное исключение, если это явно не правильно.
Подробнее здесь: https://stackoverflow.com/questions/141 ... e-argument
Мобильная версия