Форум программистов, компьютерный форум CyberForum.ru

Возможно ли явное разрушение объекта класса? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Непонятные символы в output.txt - кодировка http://www.cyberforum.ru/cpp-beginners/thread1223149.html
#include <iostream> #include <algorithm> #include <cmath> using namespace std; int main() { freopen("input.txt","r",stdin); freopen("output.txt","w",stdout); int a,b,d,e,c; cin>>a;
C++ Определить, работают ли в фирме люди с одной из заданных фамилий Известны фамилии всех 30 сотрудников фирмы и их адреса. Определить, работают ли в фирме люди с одной из фамилий: Кузин, Куравлев, Кудин, Кульков или Кубиков. В случае положительного ответа напечатать их адреса. Вот такую вот задачку задали в универе. http://www.cyberforum.ru/cpp-beginners/thread1223141.html
C++ Перегрузить оператор суммирования, не принадлежащий классу
Перегруженный оператор суммирования, который не будет пренадлежать классу и будет работать с 2 объектами двумерных классов (наверное массивов)
Запись в базовый класс информации из наследников C++
Написать перегруженный оператор преобразования типов который будет вытягивать из класса наследников нужную информацию и эту информацию записывать в базовый класс
C++ Классы, которые будут индексировать букву http://www.cyberforum.ru/cpp-beginners/thread1223136.html
Написать 3 класса которые будут индексировать букву
C++ Ошибка деструктора - В конструкторе происходит выход за границу массива Доброго времени. #include <iostream.h> #include <math.h> class OKTAVE { public: OKTAVE(unsigned int Leng) { подробнее

Показать сообщение отдельно
DrOffset
6851 / 4062 / 927
Регистрация: 30.01.2014
Сообщений: 6,859
06.07.2014, 00:38     Возможно ли явное разрушение объекта класса?
Цитата Сообщение от TierX Посмотреть сообщение
А можно ли их удять явно самому до окончания области видимости. О чом уже и спрашивалось
Нельзя. Если нужно полный контроль за временем жизни объекта, то нужно использовать динамическое выделение памяти или\и placement new (было по ссылке выше).
Цитата Сообщение от TierX Посмотреть сообщение
Если же деструктор вызывается второй раз - значит явный вызов дестрктора не уничтожил обьект.
Уничтожил. Именно поэтому программа упала. Нельзя уничтожать второй раз то, что уже уничтожено. А вызывается он согласно модели данных, которая принята в языке. Никакой рантайм анализ как в управляемых языках не проводится на предмет того вызвал ли программер сам деструктор или нет. Это добавило бы ненужный оверхед, который не согласуется с идеологий языка ("не платим за то, что не используем").
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru