Я пытаюсь написать функцию, которая принимает функцию в качестве одного из аргументов - задачу, которую я делал много раз раньше.Это отлично работает:
int RunFunction(Func<int,int> f, int input) {
return f(input);
}
int Double(int x) {
return x*2;
}
// somewhere else in code
RunFunction(Double,5);
Но это не работает:
public static class FunctionyStuff {
public static int RunFunction(this Func<int,int> f, int input) {
return f(input);
}
}
// somewhere else in code
Double.RunFunction(5);
Есть идеи, почему первый работает, а второй нет?