结构式设计模式的最后两个,享元模式:实现对象共享,减少内存开销;代理模式,提供相同接口的代理
flyweight
享元模式的主要目的是实现对象的共享,即共享池,当系统中对象多的时候可以减少内存的开销,通常与工厂模式一起使用。boost::flyweight使用:
[code]struct User2{ flyweight first_name, last_name; //类似一个缓存 User2(const string &first_name, const string &last_name) : first_name(first_name), last_name(last_name) {}};void boost_flyweight(){ User2 user1{"John", "Smith"}; User2 user2{"Jane", "Smith"}; cout |