Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在代码中函数/动作/等应该放在哪里?_C#_Lambda - Fatal编程技术网

C# 在代码中函数/动作/等应该放在哪里?

C# 在代码中函数/动作/等应该放在哪里?,c#,lambda,C#,Lambda,正如标题所说。他们去哪里?它们是变量,但它们也是代码…它们应该去需要它们的地方。你能澄清你的问题吗 保存对lambda(或任何委托)的引用的变量仍然是变量。把它当作一个变量 这并不意味着你必须使用变量。在许多情况下,您可以直接内联指定lambda。我将它们与其他变量放在一起,因为它们可以像任何其他变量一样重新分配和更改。像这样: class Test { string s = "abcdefg"; int one = 1; Func<int> myFunc;

正如标题所说。他们去哪里?它们是变量,但它们也是代码…

它们应该去需要它们的地方。你能澄清你的问题吗

保存对lambda(或任何委托)的引用的变量仍然是变量。把它当作一个变量


这并不意味着你必须使用变量。在许多情况下,您可以直接内联指定lambda。

我将它们与其他变量放在一起,因为它们可以像任何其他变量一样重新分配和更改。像这样:

class Test
{
    string s = "abcdefg";
    int one = 1;
    Func<int> myFunc;

    void MyMethod()
    {
        int x = 5;
        float f = 3.86;
        Action<string> a;
    }
}
类测试
{
字符串s=“abcdefg”;
int-one=1;
Func myFunc;
void MyMethod()
{
int x=5;
浮点数f=3.86;
行动a;
}
}
我不太清楚你还想说什么(或在哪里?

举个例子:

private Func<bool> isFooOn = () =>
{
    //do something
};
private Func isFooOn=()=>
{
//做点什么
};

您的意思是我应该在哪里声明包含lambda引用的变量?如果是这样的话:关于变量。我认为这真的是个人品味。如果您计划重新分配它们,您可能希望将它们与变量一起放置。另一方面,将它们与代码的其余部分放在一起可能更干净,特别是如果使用区域标记对代码进行分组。