870920 Menu

DeletedAtShutdown 自销毁类

DeletedAtShutdown虽非抽象类,但无法显式创建对象(构造函数与析构函数均为protected)。显然,该类只可作为基类使用。所有继承自DeletedAtShutdown的派生类,其堆对象均无需显式销毁,程序退出时自动释放该对象所占用的内存并交还给操作系统,不会出现内存泄露的问题。

如果某个自定义类需创建堆对象,又不便确定何时由何类来销毁,则可继承此类。比如:不打算显式销毁的单例类。

无需使用本类的任何成员函数,定义派生类时只需private继承即可。JUCE类库中的SplashScreen(闪屏)类就继承了本类:

此外,JUCE类库的Desktop和ModalComponentManager这两个类也继承了DeletedAtShutdown。