public int Add(object obj) { int pos = -1; if (head.index != 0) { pos = head.index; list[pos].obj = obj; head.index = list[pos].index; } else { pos = list.Count; list.Add(new PoolNode(pos, obj)); count = pos + 1; } return pos; }
public int AddObject <T>(T obj) { int pos = 0; objects.Add(obj, out pos); return(pos); }