2015-07-19 119 views
-6

什么类型必须是“有趣”,如果没有编译错误C#。什么类型必须是可变

class Program 
    { 
     static void Main(string[] args) 
     { 

      int[] a = { 5, 3, 4 }; 
      int sum = 0; 
      for (int i = 0; i < fun.Length; i++) 
       sum = sum + fun[i](a[i]); 
      Console.WriteLine(sum); 
     } 
    } 
+3

这显然是功课。请尝试,这不仅仅是为了惹恼你,你的学习也是如此。 – OMGtechy

+3

这段独立的代码不会编译。 – Andrey

+0

'fun'必须用一个'[](int)'索引器(或不太精确的)来评估一个对象,比如一个数组或者List,它本身必须返回一个'Func '整数(尽管它可能不太精炼)并返回一个整数(或者可以隐式转换为这种类型的类型)。 – user2864740

回答

-5

为了让编译,您可以添加一个局部变量fun这样的:

static void Main(string[] args) 
{ 
    Func<int, int>[] fun = new Func<int, int>[0]; // <-- 
    int[] a = { 5, 3, 4 }; 
    int sum = 0; 
    for (int i = 0; i < fun.Length; i++) 
     sum = sum + fun[i](a[i]); 
    Console.WriteLine(sum); 
} 
+0

为什么downvote :)? – AlexD

+1

@AlexD,不要鼓励人们在没有任何尝试的情况下发布“简单的家庭暴力”。 –

+1

我不同意倒票,它的问题和答案网站。他问了一个问题并得到了答案。 – Xela

相关问题