c# 泛型方法:需要类型参数
c# Generic methods: Type argument required
获取错误:
使用泛型方法 'Program.Sort3Vars(T[],T[],T[])' 需要 1 个类型参数。
这里不是定义了吗?
Sort3Vars<int, string, string>(cost, var1, var2);
这是我正在制作的排序算法。我希望能够按整数、字符串或双精度等进行排序,而不必多次使用不同的数据类型编写相同的方法。
这是我遇到错误的代码。
namespace ConsoleApplication10
{
class Program
{
public static int[] cost = { 2, 5, 3, 4, 2, 1 };
public static double[] costdouble = { 2.5, 4.30, 3.33, 4, 2, 1.10 };
public static string[] var1 = { "apple", "mango", "banana", "grapes", "chicken", "ham" };
public static string[] var2 = { "fruit", "fruit", "fruit", "fruit", "meat", "meat", };
static void Main(string[] args)
{
Sort3Vars<int, string, string>(cost, var1, var2);
//Using generic method 'Program.Sort3Vars(T[],T[],T[])' requires 1 type arguments.
}
public static void Sort3Vars<T>(T[] tkey, T[] tvar1, T[] tvar2)
{
//sort tvar1, tvar2 by cost/tkey stub.
}
}
}
这是一种具有 3 个参数和一个通用参数的方法,T
,所有 3 个参数都相同。您想要一个具有 3 个通用参数的方法,每个参数一个:
public static void Sort3Vars<TKey, T1, T2>(TKey[] tkey, T1[] tvar1, T2[] tvar2)
{
//sort tvar1, tvar2 by cost/tkey stub.
}
获取错误:
使用泛型方法 'Program.Sort3Vars(T[],T[],T[])' 需要 1 个类型参数。
这里不是定义了吗?
Sort3Vars<int, string, string>(cost, var1, var2);
这是我正在制作的排序算法。我希望能够按整数、字符串或双精度等进行排序,而不必多次使用不同的数据类型编写相同的方法。
这是我遇到错误的代码。
namespace ConsoleApplication10
{
class Program
{
public static int[] cost = { 2, 5, 3, 4, 2, 1 };
public static double[] costdouble = { 2.5, 4.30, 3.33, 4, 2, 1.10 };
public static string[] var1 = { "apple", "mango", "banana", "grapes", "chicken", "ham" };
public static string[] var2 = { "fruit", "fruit", "fruit", "fruit", "meat", "meat", };
static void Main(string[] args)
{
Sort3Vars<int, string, string>(cost, var1, var2);
//Using generic method 'Program.Sort3Vars(T[],T[],T[])' requires 1 type arguments.
}
public static void Sort3Vars<T>(T[] tkey, T[] tvar1, T[] tvar2)
{
//sort tvar1, tvar2 by cost/tkey stub.
}
}
}
这是一种具有 3 个参数和一个通用参数的方法,T
,所有 3 个参数都相同。您想要一个具有 3 个通用参数的方法,每个参数一个:
public static void Sort3Vars<TKey, T1, T2>(TKey[] tkey, T1[] tvar1, T2[] tvar2)
{
//sort tvar1, tvar2 by cost/tkey stub.
}