调用Array.Sort()时有关委托的奇怪错误

时间:2016-05-30 14:24:06

标签: c# arrays sorting delegates

我有这个方法包含对Array.Sort()的调用,其中包含一个自定义比较委托,以便靠近3d矢量对它们进行排序;

GameObject[] GetGrabbableObjects(Vector3 SortedByClosestPoint)
{
    GameObject[] Grabbables = GameObject.FindGameObjectsWithTag("Grabbable");
    Array.Sort(Grabbables, delegate (Vector3 A, Vector3 B) { return (SortedByClosestPoint - A).magnitude.CompareTo((SortedByClosestPoint - B).magnitude); });
}

即使我非常确定我正确地编写了参数,但Visual Studio在代理Cannot convert anonymous method to type 'Array' because it is not a delegate type上给出了一个错误,好像它正在尝试使用不同的重载。

是的,这是一个统一的脚本,但这似乎与C#相比,而不是Unity

编辑:对不起伙计们,错误的数据类型。代表应该使用两个GameObjects而不是两个Vector3

0 个答案:

没有答案