Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
WepstaR
22 / 2 / 1
Регистрация: 16.02.2014
Сообщений: 170
Записей в блоге: 1
#1

Деструктор в С++ (вывзов) - C++

24.02.2014, 22:20. Просмотров 438. Ответов 17
Метки нет (Все метки)

Добрый вечер.
Наверно нубский вопрос:

Нужно добавить в класс деструктор. Чтобы в конце класс разрушался. Но у меня происходит разрушение каждый раз. После каждого метода. Всегда.

Как сделать так чтобы он вызывался только в конце кода ?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.02.2014, 22:20
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Деструктор в С++ (вывзов) (C++):

Почему создается виртуальный деструктор A, а в таблице виртуальных функций лежит деструктор B - C++
Почему я делаю виртуальным деструктор A, а в таблице виртуальных функций лежит деструктор B?

Деструктор - C++
Добрый вечер!мне нужна одна программа для примера(рабочая),но это тему мы коснулись слегка..хотел попросить у кого есть...

Деструктор - C++
В чем проблема?)

Деструктор - C++
Ребята, объясните, пожалуйста, где, как и когда в программе вызывается деструктор? Вот мой пример: #include <iostream> using namespace...

Деструктор - C++
Вроде все просто но чето никак не работает Задача: Написать программу в которой Конструктор класса MyCl выводит сообщение на...

Деструктор! - C++
Как вызвать деструктор? #include <iostream> #include <conio.h> #include <iostream> #include <iomanip> #include <string> using...

17
Croessmah
Ушел
13777 / 8027 / 927
Регистрация: 27.09.2012
Сообщений: 19,784
Записей в блоге: 3
Завершенные тесты: 1
24.02.2014, 22:22 #2
Цитата Сообщение от WepstaR Посмотреть сообщение
Но у меня происходит разрушение каждый раз. После каждого метода. Всегда.
нет кода, нет решения. Откуда мы знаем что Вы понаписали?
0
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
24.02.2014, 22:23 #3
Цитата Сообщение от WepstaR Посмотреть сообщение
Как сделать так чтобы он вызывался только в конце кода ?
А вы код покажите

Добавлено через 36 секунд
Цитата Сообщение от Croessmah Посмотреть сообщение
нет кода, нет решения.

Не по теме:

Думаем синхронно

0
WepstaR
22 / 2 / 1
Регистрация: 16.02.2014
Сообщений: 170
Записей в блоге: 1
24.02.2014, 22:25  [ТС] #4
У меня код на 6 листов А4. Просто объясните как создать Деструктор классу. Так чтобы он уничтожал только в конце кода. А не после каждого метода.
0
Croessmah
Ушел
13777 / 8027 / 927
Регистрация: 27.09.2012
Сообщений: 19,784
Записей в блоге: 3
Завершенные тесты: 1
24.02.2014, 22:27 #5
C++
1
2
~ClassName(){
}
0
castaway
Эксперт С++
4926 / 3033 / 372
Регистрация: 10.11.2010
Сообщений: 11,084
Записей в блоге: 10
Завершенные тесты: 1
24.02.2014, 22:31 #6
Цитата Сообщение от WepstaR Посмотреть сообщение
Просто объясните как создать Деструктор классу. Так чтобы он уничтожал только в конце кода. А не после каждого метода.
Деструктор вызывается в конце скопа. Не вижу никаких проблем.
0
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
24.02.2014, 22:31 #7
Цитата Сообщение от WepstaR Посмотреть сообщение
А не после каждого метода.
Как это вам удалось?
0
WepstaR
22 / 2 / 1
Регистрация: 16.02.2014
Сообщений: 170
Записей в блоге: 1
24.02.2014, 22:32  [ТС] #8
Ну вот я точно так же и делаю. Но вызывается не в конце кода. А после совершенно каждого метода.
0
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
24.02.2014, 22:34 #9
Цитата Сообщение от WepstaR Посмотреть сообщение
А после совершенно каждого метода.
Покажите любой из методов, поскъле которого это происходит и пример обращения.
0
castaway
Эксперт С++
4926 / 3033 / 372
Регистрация: 10.11.2010
Сообщений: 11,084
Записей в блоге: 10
Завершенные тесты: 1
24.02.2014, 22:35 #10
Цитата Сообщение от WepstaR Посмотреть сообщение
Ну вот я точно так же и делаю. Но вызывается не в конце кода. А после совершенно каждого метода.
Могу только посочувствовать...
0
WepstaR
22 / 2 / 1
Регистрация: 16.02.2014
Сообщений: 170
Записей в блоге: 1
24.02.2014, 22:44  [ТС] #11
Цитата Сообщение от mustimur Посмотреть сообщение
Покажите любой из методов, поскъле которого это происходит и пример обращения.
public: void Display (long stu){
cout<<"Левая часть числа ровна = "<<stu<<endl;} //Метод


arr1.Display(sbk); //вызов

После вывода числа сразу выходит сообщение о удалении Объекта.
0
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
24.02.2014, 22:51 #12
Проблема не здесь, подозреваю что искать далее надо в int main()
0
WepstaR
22 / 2 / 1
Регистрация: 16.02.2014
Сообщений: 170
Записей в блоге: 1
25.02.2014, 18:11  [ТС] #13
Кстати там у меня несколько конструкторов. Из них несколько экземпляров классов. А деструктор то один. Может из-за этого постоянно деструктор срабатывает ?
0
Kuzia domovenok
2130 / 1959 / 197
Регистрация: 25.03.2012
Сообщений: 6,826
Записей в блоге: 1
25.02.2014, 18:15 #14
Кот в студию! Кода! Больше кода!
0
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
25.02.2014, 18:43 #15
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
Кот в студию! Кода! Больше кода!

Не по теме:

Лозунг для местной демонстрации

А по сути верно, дайте код!
0
25.02.2014, 18:43
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.02.2014, 18:43
Привет! Вот еще темы с ответами:

деструктор - C++
Для освобождения памяти динамически выделенных массивам надо использовать delete. требуется ли освобождать память выделенную под простой...

Деструктор - C++
Доброго времени суток, есть некоторый класс и 2 функции подобны тем, что описаны ниже. В первой объявляется данный класс, обрабатывается и...

Деструктор - C++
В каком случае необходимо явно определять деструктор?

Деструктор - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; #define _CRTDBG_MAP_ALLOC #include &lt;crtdbg.h&gt; using namespace std; class list{ ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru