2 tumubu tumubu 于 2016.01.17 17:54 提问

C#面试的问题:用扩展方法实现给double添加开平方根的功能,函数名叫做sqrt。
c#

C#面试的问题:用扩展方法实现给double添加开平方根的功能,函数名叫做sqrt。

2个回答

caozhy
caozhy   Ds   Rxr 2016.01.17 18:18
已采纳

static class MyClass
{
public static double sqrt(this double x)
{
return Math.Sqrt(x);
}
}

91program
91program   Ds   Rxr 2016.01.17 19:51

C#扩展方法的理解

“扩展方法使您能够向现有类型“添加”方法,而无需创建新的派生类型、重新编译或以其他方式修改原始类型。”
这是msdn上说的,也就是你可以对String,Int,DataRow,DataTable等这些类型的基础上增加一个或多个方法,使用时不需要去修改或编译类型本身的代码。
先做个例子吧,以String为例,需要在字符串类型中加一个从字符串转为数值的功能。
以往我们可能是这样做的,会专门写一个方法做过转换

public static double sqrt(double x)
{
return Math.Sqrt(x);
}

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!