|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
27.04.2020, 17:52 | #1 |
Пользователь
Регистрация: 15.04.2010
Сообщений: 98
|
Отловить завершение работы программы
Если ли в C++ аналог Паскалевского finalization? Т.е. когда программа завершает свою работу и все модули выгружаются из памяти, выполнить некоторое действие?
Приведу абстрактный пример: Есть у меня некоторый класс, у которого все члены статические. Мне нужно по завершении работы программы вызвать метод save(). Т.к. класс статический, то о деструкторе не может идти речи. А вручную вызывать save() в конце можно банально забыть. Код:
|
27.04.2020, 18:32 | #2 |
Программист
Участник клуба
Регистрация: 23.06.2009
Сообщений: 1,772
|
|
27.04.2020, 18:40 | #3 |
Пользователь
Регистрация: 15.04.2010
Сообщений: 98
|
|
27.04.2020, 18:46 | #4 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,341
|
Гугл подсказывает об std::atexit. Но теперь вместо ручного вызова save будет ручная регистрация функции.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
27.04.2020, 22:57 | #5 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,342
|
Напишите деструктор.
|
27.04.2020, 23:48 | #6 |
Пользователь
Регистрация: 15.04.2010
Сообщений: 98
|
|
28.04.2020, 09:03 | #7 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,342
|
|
28.04.2020, 10:55 | #8 |
фрилансер
Участник клуба
Регистрация: 11.10.2019
Сообщений: 1,010
|
не бывает никаких статических классов, бывает статическая переменная, статическое поле класса или статическая функция.
Тебе нужно убрать статику внутри класса и объявить глобальную переменную Код:
Последний раз редактировалось Алексей1153; 28.04.2020 в 11:05. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Завершение работы сторонней программы | AnryKZKZ | Общие вопросы Delphi | 16 | 16.05.2014 10:03 |
завершение работы программы | oranger | Помощь студентам | 2 | 25.06.2012 22:51 |
Завершение работы программы нажатием ESC | whatever | Помощь студентам | 0 | 30.04.2012 00:07 |
Завершение работы программы без формы | FaTaL | Общие вопросы Delphi | 5 | 21.06.2011 09:55 |
Завершение работы чужой программы | Viteef | Win Api | 12 | 24.09.2007 12:31 |