Неизвестный C++: exceptions

Во многих книгах пишут, что нужно избегать exception-ов в конструкторах и деструкторах. Exception в конструкторе нам как бы «подсказывает», что объект не был сконструирован до конца и следовательно, нет смысла вызывать деструктор для такого объекта. Такое поведение чревато утечками ресурсов, поскольку как правило ресурсы освобождаются в деструкторе.

Читать далее →

Коробок спичек в изометрии или простые задачи для программистов. Часть I.

Общаясь с одним из своих друзей, я спросил: «что обычно спрашиваю у вас на собеседованиях, когда вы ищете инженеров-кораблестроителей?». Ответ был следующим: «попросят от руки нарисовать коробок спичек в изометрии». Мой друг — недавний выпускник, уже отработавший несколько лет на кораблестроительном заводе инженером-конструктором и ставший небольшим руководителем, был сильно удивлён такому простому вопросу («не мог понять в чём подвох»), и просто нарисовал коробок спичек… После трудоустройства, он рассказал, что участвовал в нескольких собеседованиях при приёме новых сотрудников, и на удивление не все «корабелы» могли пройти такой простой тест. Это меня озадачило, поскольку в моём понимании инженеры-кораблестроители по определению должны рисовать чертежи кораблей, рассчитывать их физику и т.п. Но я не кораблестроитель, чтобы судить, поэтому давайте рассмотрим подобные простые задачи, которые задают программистам на собеседованиях.

Читать далее →