Конструкторы и деструкторы
Если у класса есть конструктор, он вызывается всякий раз при создании объекта этого класса. Если у класса есть деструктор, он вызывается всякий раз, когда уничтожается объект этого класса. Объект может создаваться как:
- автоматический, который создается каждый раз, когда его описание встречается при выполнении программы, и уничтожается по выходе из блока, в котором он описан;
- статический, который создается один раз при запуске программы и уничтожается при ее завершении;
- объект в свободной памяти, который создается операцией new и уничтожается операцией delete;
- объект-член, который создается в процессе создания другого класса или при создании массива, элементом которого он является.
Кроме этого объект может создаваться, если в выражении явно используется его конструктор или как временный объект. В обоих случаях такой объект не имеет имени. В следующих подразделах предполагается, что объекты относятся к классу с конструктором и деструктором.