个人理解:针对一个字段或者对象可以进行额外的方法操作。
用法:在扩展方法参数类型前加this关键字,
注:扩展方法需要在非泛型静态类中定义。
//extension.cs
using System;
namespace Extension
{
public static class ExtensionFunction
{
// 划重点:参数类型前加上了this关键字
public static int ConventToInt(this string str)
{
var result = 0;
Int32.TryParse(str,out result);
return result;
}
}
}
一般写进SDK后引用之后就可以这样调用方法了(当然也可以不这么做):
// main.h
using Extension;
public static class Main
{
public static void main()
{
string s = "111";
int a = s.ConventToInt();
}
}
就好比类里的成员方法一样可以这样使用。
注:如有误欢迎各位大佬指正。