Единственное реальное соглашение, о котором я знаю, это ставить перед ними префикс E
.Я не особо задумывался об этом в прошлом, но сейчас я думаю об этом, мне кажется, что и Error
, и Exception
обычно используются в качестве постфикса.Если вы смешаете их, я бы сказал, что Exception
относится к чему-то, что неожиданно работает неправильно, например к разрывному соединению или к файлу, который оказывается нечитаемым, в то время как ошибка больше относится к неправильному вводу, напримерожидалось число, но кто-то набрал текст.
Кажется, что VCL также следует определенным соглашениям, но, похоже, добавляет постфикс только в том случае, если он не будет ясным и без ошибок, например
EConvertError, EMathError, EVariantError
vs
EAccessViolation, EInvalidPointer, EZeroDivide
Последние описывают саму ошибку, где первый список должен содержать постфикс для указания ошибки вопределенный процесс или сущность.
Эти примеры можно найти в SysUtils, может быть, вы можете посмотреть там, потому что он содержит много классов исключений, а также базовые классы для еще большего количества исключений.Очень немногие из них заканчиваются на Exception
, за исключением некоторых очень специфических ошибок, с которыми вы действительно никогда не столкнетесь, таких как EHeapException и ESafecallException.