题目中没有说模式,只说了内存管理。因为我在代码中使用了类似的东西,照猫画虎,虽然没创意,但是能解决一些实际的问题。
其实是一种插件方法。
上次写模块计算,想到了这个方法。一个一个的计算模块,作为插件放到主程序中,使用cppunit中管理测试用例类的工厂来方法来搞定。来管理作为插件的计算模块。这需要一个统一的计算接口,不过也可以定义出可以扩展的接口。
其中的结构就是做一个计算模块管理器,使用单件实现, 内部保存一个静态的map,对外界的表现是那个名字,有名字就返回对应的模块,没有就加载一下,这样就管理了所有的计算模块。可以实现迟加载,是一种合理的方法。也是一种简单的方法,可以解决一般的问题。
简单的问题,简单的方法,简单的生活。