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

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

Войти
Регистрация
Восстановить пароль
 
The_bolT
70 / 70 / 1
Регистрация: 22.01.2013
Сообщений: 231
#1

Явный вызов деструктора - C++

29.01.2013, 00:10. Просмотров 581. Ответов 1
Метки нет (Все метки)

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

Явный вызов деструктора - C++
Есть класс Person, с полями string,string,long. Исходные данные хранятся в файле. Нужно сделать вектор объектов этого класса. ...

Явный вызов конструкторов перемещения - C++
Для перемещения предлагается такая запись: TYPE a; TYPE b = std::move(a); Но при этом, если у объекта не задан конструктор...

Явный вызов и объявление статических полей - C++
1) Как сделать невозможным явный вызов деструктора и операторов? class MyClass { private : int _n; public : MyClass(int...

Вызов деструктора - C++
При ручном вызове деструктора, освобождается ли память*

Вызов деструктора - C++
Доброго вам времени суток. Проблема в том, что деструктор не выводит сообщение без этой строки. s1.~Shave(); И я не уверен, что так...

Вызов деструктора - C++
Вызывается ли деструктор объекта при завершении программы? а при аварийном завершении? А если снять процесс приложения диспетчером?

1
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
29.01.2013, 00:22 #2
The_bolT,
C++
1
obj.~Type();
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
 
class C
{
public:
   ~C() { std::cout << "d-tor" << std::endl; }
};
 
int main()
{
   char* ptr = static_cast<char*>(operator new(sizeof(C)));
   C* p = new(ptr) C();
   p->~C();
   delete[] ptr;
}
http://liveworkspace.org/code/JTQv8$2
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.01.2013, 00:22
Привет! Вот еще темы с ответами:

Вызов деструктора - C++
Есть написанный мною код: #include &lt;iostream&gt; class Foo { private: int *key; public: Foo (const int a=0) { key = new int...

Не понятный вызов деструктора - C++
Здравствуйте. Ситуация такая, есть класс MyClass к примеру, и при таком коде: //разные инклюды MyClass var; int WinMain(...) { ...

Двойной вызов деструктора - C++
Здравствуйте, уважаемые. Вот столкнулся с такой проблемой... CharRow - это класс, который содержит указатель на строку... ...

Повторный вызов деструктора - C++
{ bar b; b.~bar(); } В данном примере деструктор bar вызовется дважды. Как у уже удаленного объекта может вызываться...


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

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

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