Я в учебных целях и из спортивного интереса разрабатываю класс для работы с bmp картинками. Функционал пока что примитивный - чтение из файла, запись в файл, вывод на в консоль (да, я упоролся), в дальнейшем будет еще что нибудь, например рисование примитивов на открытом изображении. О всяческих ошибках по моей задумке класс должен сообщать использующей его программе с помощью исключений. Например, если перед вызовом функции read() имя открываемого файла указано не было, выбрасывается исключение, или при чтении файл внезапно кончился, хотя должен был продолжаться, опять выбрасывается исключение.
Является ли частое использование хорошим тоном? Или может быть лучше вообще не использовать исключения, а просто сделать bool read(), который вернет false если случилась ошибка, и другие функции переписать в таком же духе? Какие еще особенности бывают при работе с исключениями?