Всякий раз, когда объект сконструирован, должен ли конструктор всегда оставлять его в "инициализированном" состоянии?
Например, если класс Image имеет два конструктора, в которых один принимает строку пути к файлу, а другой не принимает никаких параметров, является ли плохой практикой для последнего оставить объект изображения в недопустимом состоянии?
Предполагая, что класс написан для обработки обоих состояний.
Я спрашиваю об этом, потому что в большинстве случаев мне почти необходимо иметь конструкцию по умолчанию. Особенно, когда объект является членом класса и вы хотите его инициализировать в конструкторе этого класса.
EDIT: я знаю список инициаторов участников. Я нашел несколько ситуаций, когда я хотел бы построить объект ВО ВРЕМЯ конструктора класса, в котором он хранится, а не раньше. Хотя, я понимаю, что это потенциально может быть более опасным, чем любая другая альтернатива.