captured-variable相关内容

在 C# 的循环中捕获的变量

我遇到了一个关于 C# 的有趣问题.我有如下代码. List>动作=新列表>();整数变量 = 0;而(变量 变量 * 2);++变量;}foreach(var 行动中的行为){Console.WriteLine(act.Invoke());} 我希望它输出 0、2、4、6、8.然而,它实际上输出了五个 10. 这似乎是由于所有操作都引用了一个捕 ..
发布时间:2022-01-30 09:44:36 C#/.NET

在 C# 中的循环中捕获变量

我遇到了一个关于 C# 的有趣问题.我有如下代码. List>actions = new List>();int 变量 = 0;而(变量 变量 * 2);++ 变量;}foreach(var 行动){Console.WriteLine(act.Invoke());} 我希望它输出 0、2、4、6、8.然而,它实际上输出了 5 个 10. 似乎是由于所有操作都引用了一个捕获的变量.结果, ..
发布时间:2021-12-01 08:55:36 C#/.NET

捕获变量实例化问题

我目前正在想一些我做错了的主意. 问题是我想使用一个lambda函数来实例化捕获的变量,并使用另一个lambda来访问该变量的属性. 由于实例化发生在lambda中,因此该变量实际上并没有在我要在第二个lambda中使用它的时间实例化. 我知道变量将在第二个lambda中被实例化的时间被实例化,但是编译器没有实例化. 我的想法有什么可行的方法吗?这是实际的代码: cla ..
发布时间:2021-05-28 20:08:37 C#/.NET

如何避免捕获变量?

我遇到问题 foreach(类别中的var类别){foreach(单词中的单词){var waitCallback = new WaitCallback(state =>{DoSomething(word,category);});ThreadPool.QueueUserWorkItem(waitCallback);}} 当执行 DoSomething 时,它将为每个捕获的变量接收最新值, ..
发布时间:2021-04-01 20:59:21 C#/.NET

在C#中的循环变量抓获

我遇见了关于C#一个有趣的问题。我有code像下面。 列表<&Func键LT; INT>>行动=新的List<&Func键LT; INT>>();int变量= 0; 而(可变小于5) { actions.Add(()=>可变* 2); ++变量; }的foreach(在行动VAR法) { Console.WriteLine(act ..
发布时间:2016-08-26 13:46:32 C#/.NET