C# 函数委托(delegate)

标签 c# delegates

我正在使用 Func<> 委托(delegate)添加整数范围 (101,105)。我想在执行以下命令时得到 101,102,..105 作为输出。但是我得到 204,204,..... 出了什么问题?

class MainClass
    {
       static List<Func<int>> somevalues = new List<Func<int>>();
        static void Main()
        {
            foreach (int r in  Enumerable.Range(100, 105))
            {
                somevalues.Add(() => r);
            }

            ProcessList(somevalues);
            Console.ReadKey(true);
        }

        static void ProcessList(List<Func<int>> someValues)
        {
            foreach (Func<int> function in someValues)
            {
                Console.WriteLine(function());
            }
        }

    }

最佳答案

关于C# 函数委托(delegate),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1821626/

相关文章:

java - 如何在 lucene 4.x 中正确实现委托(delegate)分词器?

c++ - 委派构造函数和模板

c# - Nitpicky ReSharper 行为,对 Request.Cookies 的空引用

c# - 是否可以将 .exe 程序集安装到 GAC 中?

iOS Framework Delegate 和 IBAction 没有在 Swift 中被调用

ios - 没有 segue 的两个 ViewController 之间的委托(delegate)

c# - 事件处理程序和协方差

c# - 在函数内设置 Expression<Func<T>> 的值

c# - 自定义组件点击事件

c# - 通过反射转换到泛型接口(interface)