|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
17.02.2012, 21:23 | #1 |
Пользователь
Регистрация: 05.02.2012
Сообщений: 17
|
Класс - конструктор , деструктор
Взялся за новую литературу , в ней нашлись вещи которые небыли раскзаны в других прочтённых мною изданиях.
Вопрос на тему Конструкторы деструкторы классов. Я немного напишу о них своими словами, вы поправьте меня моё представление о них вовсе ошибочное, может не правильно понял их. Изначально объявив класс можно забить полями данных (переменные не инециализированные всякие), методами (функции объявленные). В файле реализации класса *.cpp если начать использовать конструктор то как только клас начнёт действовать - "конструктор" автоматически в первую очередь выполнит код который у него внутри, а потом уже будет работать с другими методами? Получается что Конструктор довольно эффективен если нужно создать какие то стандартные вещи по дефолту которые будут выставляться при использовании этого класса? Если же создать деструктор и забить его кодом то он будет пока непробудно спать до тех пор пока не произойдёт уничтожение класса и как только это произойдёт то начнётся выполняться код внутри деструктора ? Если выше написанное отчасти правельно понято тогда вопрос, а как вообще завтавить уничтожиться клас что бы он начал выполнять то что заложено в деструктор ? Есть какая та особая команда или что ? Последний раз редактировалось xays; 17.02.2012 в 21:25. |
17.02.2012, 21:46 | #2 |
Старожил
Регистрация: 16.12.2011
Сообщений: 2,329
|
Конструктор - функция создания объекта класса.
Результатом благополучно отработавшего конструктора является объект. Поэтому, запуск конструктора объекта всегда приводит к созданию объекта. (При условии конечно, что конструктор благополучно отработал). Диструктор - функция, которая автоматически будет вызвана перед уничтожением объекта класса. Диструктор ничего не возвращает. Он лишь выполняет некие заложенные в него инструкции, которые должны быть выполнены прежде, чем память выделенная под объект будет освобождена. Диструктор можно запустить явно. Сам по себе запуск диструктора не приведёт к уничтожению самого объекта. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
C++. Конструктор и деструктор | dimok5 | Помощь студентам | 1 | 29.11.2011 19:31 |
Конструктор Деструктор | sir.andrey | Помощь студентам | 7 | 02.07.2011 10:56 |
Конструктор и деструктор | Ярослав Л | Помощь студентам | 1 | 18.01.2011 15:20 |
С++ (конструктор, деструктор, копирующий конструктор) | Jane-sad | Помощь студентам | 2 | 01.10.2010 10:01 |
С++ (конструктор, деструктор) | Kventin | Помощь студентам | 4 | 31.03.2009 18:11 |