Я склоняюсь к использованию std :: tr1 :: shared_ptr для автоматического управления указателем на класс утилиты в моей графической программе.Когда это целесообразно использовать C++ Smart Pointers в графических интерфейсах (Программы с основными контурами)
В основном вот скелет программы:
int main() {
Allocate dynamic memory for utility class
GUI code.. GUI code... GUI Code..
GUI Main Loop
}
Программа завершается, когда пользователь вызывает quit_cb или SIGINT (CTRL + C) называется. В моей ситуации мне нужно иметь возможность называть delete в любом случае. Я могу вызвать delete в quit_cb, но если SIGINT вызывается ... тогда delete никогда не вызывается! В этом случае целесообразно использовать интеллектуальный указатель?