C# 方法中的this参数
2011-04-12 14:28
232 查看
public static class TestThis{ public static void Foo(this string s) { Console.WriteLine("Foo to{0}",s); } } 为什么这里会有一个this关键字,做什么用?其实这就是扩展方法!这个扩展方法在静态类中声明,定义一个静态方法,其中第一个参数定义可它的扩展类型。Foo()方法扩展了String类,因为它的第一个参数定义了String类型,为了区分扩展方法和一般的静态方法,扩展方法还需要给第一个参数使用this关键字。 现在就可以使用带string类型的Foo方法了: string s="Hello"; s.Foo(); 结果在控制台上显示Foo to Hello ,因为Hello是传送给Foo方法的字符串。
相关文章推荐
- C# 参数带this是什么意思(扩展方法)
- C# 方法中的this参数
- C# 方法中的this参数--.NET3.5类型的扩展方法
- C# 方法中的this参数
- MSDN---扩展方法 (C# 方法中的this参数)
- C# 方法中的this参数
- c#怎样利用this.Invoke()方法,用委托调用带参数的方法?new ParameterizedThreadStart()除外
- C# 方法中的this参数
- C#基础加强--this 的用法(重载构造方法,设置构造方法中参数的默认值)
- C# 参数带this是什么意思(扩展方法)
- C#基础之方法参数
- C#调用非托管函数参数为Void* 时,方法
- C#线程调用带参数的方法 ~
- C# 方法参数
- C#中方法的参数
- C#方法重载-基于不同数量的参数的方法重载
- C#中方法参数 ref 与 out 的区别
- Delphi 调用C#编写的WebService 参数为Null解决方法
- C#方法参数传递-引用参数ref关键字
- C# 获取方法内参数名称