资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,7 享元模式,引入,C类及子类对象众多,对象粒度小(超轻量级),对象状态变化不过于复杂,例:一个绘图程序里用到大量的线段、园、矩形等对象。,解决方案,采用共享的思想,必须解决对象的计数和区分,共享对象的计数,区分内部(内蕴)状态和外部(外蕴)状态,外部状态的表示-通常会有Layout对象,例,Class GlyphFactory,Public:,GlyphFactory();,virtual GlyphFactory();,virtual Character*CreateCharacter(char);,virtual Row*CreateRow();,virtual Column*CreateColumn();,Private:,Character*chars128;,;,GlyphFactory:GlyphFactory,for(int i=0;i128;i+)charsi=0;,Character*GlyphFactory:CreateCharacter(char c),if(!charsc),charsc=new Character(c);,return charsc;,Row*GlyphFactory:CreateRow(),return new Row;,Column*GlyphFactory:CreateColumn(),return new Column;,
展开阅读全文