История изменений
Исправление aist1, (текущая версия) :
Ну как бы там без вариантов. Из конструктора кроме как исключением ошибку никак не вернуть.
Можно ошибку специальным out-параметром возвращать из конструктора. Всё нормально работает, в том числе и для базовых классов. Просто нужно немного TMP-сахарку подсыпать. Выглядеть это будет примерно так. На клиетской стороне будет примерно так.
(Но там я как раз постепенно выпиливаю коды ошибок в пользу исключений).
Исходная версия aist1, :
Ну как бы там без вариантов. Из конструктора кроме как исключением ошибку никак не вернуть.
Можно ошибку специальным out-параметром возвращать из конструктора. Всё нормально работает, в том числе и для базовых классов. Просто нужно немного TMP-сахарку подсыпать. Выглядеть это будет примерно так.