gpt4 book ai didi

c# - 将方法作为构造函数的参数传递

转载 作者:太空宇宙 更新时间:2023-11-03 17:30:36 25 4
gpt4 key购买 nike

当我查看一些 C# 代码时,我发现了一个新的类声明,它传递了一个方法作为构造函数的参数。这是我第一次看到这样的东西,它对我来说没有任何意义。虽然整个应用程序工作正常我仍然有兴趣知道幕后的主要思想是什么。

var c = new List<TheClass>
{
new TheClass(TheMethod);
}

private void TheMethod()
{
//do somthing
}

最佳答案

我猜 TheClass 构造函数接受 Action delegate :

public class TheClass
{
private readonly Action _action;
public TheClass(Action action)
{
_action = action;
}
}

这样 TheClass 可以在以后多次执行提供的操作。

例如:

public void DoAction()
{
_action();
}

你也可以这样做:

var theClass = new TheClass(() => TheMethod());

关于c# - 将方法作为构造函数的参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33124667/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com