kb
04.11.2012 13:19 Azoth
> Но в дополнение у этой фичи есть один очень интересный побочный эффект. Дело в том, что как только один из конструкторов объекта закончит выполнение, объект считается созданным. И значит, если другой конструктор, из которого произошел делегирующий вызов первого конструктора, завершится с выбросом исключения, для этого объекта все равно будет вызван деструктор. Заметьте критический момент: для объекта теперь может выполниться больше одного конструктора. Но объект считается созданным после выполнения самого первого конструктора.
В общем, как обычно. Еще одна фича из разряда "это неочевидно, потому спрошу на собеседовании". Повод для гордости и статьи на хабре. http://habrahabr.ru/post/157315/