Ejemplo n.º 1
0
 public Flyweight GetFlyweight(string key)
 {
     if (!flyweights.ContainsKey(key))
     {
         flyweights[key] = new ConcreteFlyweight();
     }
     return((Flyweight)flyweights[key]);
 }
Ejemplo n.º 2
0
 private Hashtable flyweight = new Hashtable();//存储享元对象 实现享元池
 public Flyweight GetFlyweight(string key)
 {
     if (flyweight.ContainsKey(key))
     {
         return((Flyweight)flyweight[key]);
     }
     else
     {
         Flyweight temp = new ConcreteFlyweight("state");
         flyweight.Add(key, temp);
         return(temp);
     }
 }
Ejemplo n.º 3
0
        public Flyweight GetFlyweight(string key)
        {
            Flyweight flyweight;

            if (dicFlyweight.ContainsKey(key))
            {
                flyweight = dicFlyweight[key];
            }
            else
            {
                flyweight = new ConcreteFlyweight();
                dicFlyweight.Add(key, flyweight);
            }
            return(flyweight);
        }
Ejemplo n.º 4
0
        public Flyweight GetFlyweight(string key)
        {
            if (_flyweights.Contains(key))
            {
                return(_flyweights[key] as Flyweight);
            }
            else
            {
                ConcreteFlyweight newFlyweight = new ConcreteFlyweight();

                // Set properties of new flyweight here.

                _flyweights.Add(key, newFlyweight);
                return(newFlyweight);
            }
        }