Функция член с именем, совпадающим с именем ее класса, называется конструктором. Если класс имеет конструктор, то он вызывается для каждого объекта этого класса перед тем, как этот объект будет калибо использован, см. #8.6.
Конструктор не может быть virtual или friend.
Если класс имеет базовый класс или объекты члены с контрукторами, их конструкторы вызываются до конструктора проиводного класса. Первым вызывается конструктор базового класа. Объяснение того, как для таких конструктороу могут специфицироваться параметры , см. в #10, а того, как контрукторы могут использоваться для управления свободной пмятью, см. в #8.5.8.
Объект класса с конструктором не может быть членом обединения.
Для конструктора нельзя задать возвращаемое значение, как нельзя использовать оператор return в теле конструктора.
Конструктор может явно применяться для создания новых объектов его типа используя синтаксис
typedef-имя ( список_параметров opt )
Например,
complex zz = complex (1,2.3); cprint (complex (7.8,1.2));
Объекты, созданные таким образом, не имеют имени (если только конструктор не использован как инициализатор, как это было с zz выше), и их время жизни ограничено областью видмости, в которой они созданы.