Конструктор и деструктор — это слова, которые имеют значения в одном и том же классе. Конструктор имени изначально использовался для инициализации объекта.
Деструктор изначально используется для тех, кто помогает удалить объект. Конструктор и деструктор — это термины, происходящие из одного и того же кольца, но у них есть различия.
Основные выводы
- Конструктор — это метод, используемый для инициализации объектов, а деструктор — для уничтожения объектов.
- Конструкторы вызываются автоматически при создании объекта, а деструкторы вызываются автоматически при уничтожении объекта.
- Конструкторы используются для установки начальных значений переменных, а деструкторы используются для освобождения ресурсов и очистки памяти.
Конструктор против Деструктора
Конструкторы инициализируют объекты при их создании, устанавливая значения по умолчанию и выделяя память. Деструкторы, наоборот, освобождают ресурсы и память, занятые объектами, когда они больше не нужны, обеспечивая эффективную работу программы.
Существует множество функций, и среди них есть функция конструктора, которая помогает выделить память объекта, чтобы помочь ему инициализироваться.
Очень легко указать, какой из них является конструктором, поскольку они четко определены по имени с теми же классами. Конструкция всегда должна называться в общедоступном разделе класса.
В классе есть определенная функция для работы с объектом, и одна из них — функция-деструктор в классе, которая помогает перемещать объекты, которые были выделены ранее через конструктор. Он всегда должен быть назван человеком того же класса, что и его титул.
Сравнительная таблица
Параметры сравнения | Конструктор | разрушитель |
---|---|---|
Основная функция | В этой функции происходит выделение памяти объекта. | В этой функции есть a=дис-распределение памяти объекта. |
аргументы | В этой функции есть прием аргументов. | В этой функции не принимается никаких аргументов. |
Когда это называется | Когда объект создается только в это время, вызывается эта функция. | Эта функция вызывается только тогда, когда программа или блок завершаются. |
Номера | Это может быть доступно в количестве в одном классе. | Это может быть доступно только в одном номере в классе. |
перегрузка | Может иметь место перегрузка. | Перегрузки не происходит. |
Что такое конструктор?
Существует множество функций, и среди них есть функция конструктора, которая помогает выделить память объекта, чтобы помочь ему инициализироваться.
Очень легко указать, какой из них является конструктором, поскольку они четко определены по имени с теми же классами. Конструкция всегда должна называться в общедоступном разделе класса.
Конструктор не имеет типа return, то есть он не является void. В классе может быть более одного конструктора. Этот фактор известен как неявный конструктор.
Эти конструкторы также называются аргументами по умолчанию. Они также помогают динамически инициализировать объект для человека. Конструктор не имеет свойства наследовать или быть виртуальным.
Всего существует три типа конструкторов: конструктор по умолчанию, который помогает создавать объекты без каких-либо аргументов, не имеющих параметров, параметризованный конструктор, который инициализирует объекты с определенными аргументами, которые состоят из разных значений и членов, и конструкторы копирования, которые полностью отличается от других конструкторов, поскольку они принимают адрес объекта.
Что такое деструктор?
В классе есть определенная функция для работы с объектом, и одна из них — функция-деструктор в классе, которая помогает перемещать объекты, которые были выделены ранее через конструктор. Он всегда должен быть назван человеком того же класса, что и его титул.
Деструктору всегда предшествует заголовок (~). Короче говоря, функция деструктора выполняет действие, обратное функции конструктора, когда человек редактирует объект в представлении out.
В отличие от функции-конструктора, в каждом классе всегда есть только один деструктор. Из-за этого они не принимают никаких аргумент.
Как только управление или выполнение покидает блок, локальные объекты уничтожаются, и аналогичным образом глобальный объект уничтожается только тогда, когда он завершает весь объект. Это в основном известно как компилятор.
Основные различия между конструктором и деструктором
- В функции-конструкторе происходит выделение памяти объекта; с другой стороны, в функции-деструкторе происходит дислокация памяти объекта.
- Аргументы принимаются в функции-конструкторе; с другой стороны, аргументы в функции деструктора не принимаются.
- Когда объект создается только в это время, вызывается конструктор, и, с другой стороны, когда программа или блок завершаются только в это время, вызывается деструктор.
- В функции-конструкторе может возникнуть перегрузка; с другой стороны, в функции-деструкторе не может быть никакой перегрузки.
- В классе может быть несколько конструкторов; с другой стороны, деструктор может быть только один, в отличие от конструктора.
- Объект всегда отображается в последовательном порядке в функции-конструкторе, и, с другой стороны, объект всегда отображается в порядке, обратном порядку функции-конструктора в функции-деструкторе.