Arn*_*Das 3 c# class getter-setter
我们知道,可以将 Lambda 函数用作 getter,例如,
private string _name;
public string Name
{
get => _name;
}
Run Code Online (Sandbox Code Playgroud)
但是,我们可以使用匿名函数和委托作为 getter,例如,
private string _name;
public string Name
{
get => delegate { return _name; };
}
Run Code Online (Sandbox Code Playgroud)
它收到编译错误。
委托只不过是指向方法的指针(过于简化,但是您可以在此处找到详细信息Using Delegates)。所以答案是肯定的。
您可以使用委托、动作、函数等。
我给你举个世界上最人为的例子:
private static string _name = "bob";
public delegate string Del(string message);
public static string DoSomething(string message) => message + "1";
private static readonly Del Handler = DoSomething;
public string Name
{
get => Handler(_name);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
71 次 |
| 最近记录: |