日期:2014-05-19  浏览次数:20794 次

如果在使用Dictionary时,用指针作为类型参数?
我有一个自定义的类ILayer,可以理解为一个图层,我想建立一个图层名和图层的映射。

Dictionary <string,   ILayer*>   g_LyrNameToILayer    
                                                      =   new   Dictionary <string,   ILayer*> ();
编译器告诉我说ILayer*   不能作为类型参数,请问,如果不能作为类型参数,那么该怎么办呢,如果不是指针的话就可以通过,可是我想提高效率,这样就可以节省内存了,请大侠指教啊!!谢谢了

------解决方案--------------------
如果ILayer是引用类型的话,你不必担心使用Dictionary <string, ILayer> 会浪费内存,Dictionary.Add方法是不会复制对象的,Dictionary中只会保存ILayer的指针