AB>AB> { if(i=2) throw Error;}У тебя уже здесь ошибка:)))
AB>
А если серьезно то так: при возникновении исключения при конструировании В (исключение возникло в конструкторе А), твой объект В не будет создан. Если это был локальный объект, то ты пишешь обычный try/catch блок, если объект глобален — то никак.