c# sharp 中委托做参数的一个应用

来源:互联网 发布:讯龙恢复软件注册码 编辑:程序博客网 时间:2024/05/18 03:29

 .net 中有list<>.FindIndex() 的一个重载函数,

我在读主程程序的时候看到


[Serializable]
public class ResourcePaire
{
    public string Key;
    public GameObject GameObj;
}

......

 private static ResourcePaire GenerateAlgorithm(List<ResourcePaire> recycleBin, string key, string prefabRootPath, 
        Vector3 localPos, Quaternion localRot, Vector3 localScale,bool show, Transform parent)
    {

var idx = recycleBin.FindIndex(delegate(ResourcePaire tmp) { return tmp.Key == key; });  // key 是局部参数,见参数列表。


这里recycleBin 是一个 list<ResourcePaire>()..

这里findindex() 用一个委托类型做参数。。

可以想象这个方法的内部一定是,遍历recycleBin ,然后每次循环过程调用delegate(ResourcePaire tmp) { return tmp.Key == key; },

如果返回true就返回当前 index..

对于在设计l=list<A>      .FindIndex() 对也用了泛型设计的技术。。l用后者代替。



0 0
原创粉丝点击