在C#中静态方法的形式参数中使用“ this”关键字
我遇到了如下几个C#代码实例:
public static int Foo(this MyClass arg)
this
在这种情况下,我无法找到关键字含义的解释。有什么见解吗?
回答:
这是一种
。请参阅此处以获取解释。
扩展方法使开发人员可以向现有CLR类型的公共合同添加新方法,而不必对其进行子类化或重新编译原始类型。扩展方法有助于将当今在动态语言中流行的“鸭子键入”支持的灵活性与强类型语言的性能和编译时验证相结合。
扩展方法可实现各种有用的方案,并有助于实现真正强大的LINQ查询框架…。
这意味着你可以打电话
MyClass myClass = new MyClass();int i = myClass.Foo();
而不是
MyClass myClass = new MyClass();int i = Foo(myClass);
这样可以构建如下所述的流畅接口。
以上是 在C#中静态方法的形式参数中使用“ this”关键字 的全部内容, 来源链接: utcz.com/qa/400741.html