将其作为静态方法中的参数传递

本文关键字:参数传递 静态方法 | 更新日期: 2023-09-27 18:19:56

我在Visual C#for Windows Phone中的某些代码出现问题问题不在于它不起作用,因为它起作用了,但我不明白=P在静态类中,创建了一个静态方法,该方法将自己作为一个参数:

public static void MethodONe( this Timeline animation )
{
    //this class does not extend the TimeLine class, and is not connected to it in any                   
    //such way.
    animation.MethodTwo( );
}
public static void MethodTwo( this Timeline animation )
{
    someCode( );
}

这个参数传递是如何调用的,它到底做什么?

将其作为静态方法中的参数传递

这是Timeline对象的一个所谓扩展方法。它在不修改类本身的情况下添加了函数性。

http://msdn.microsoft.com/en-us/library/bb383977.aspx

在您的情况下,动画参数是Timeline对象(它正在调用函数):

var timeLine = new Timeline();
timeLine.MethodTwo();

因此,timeLine对象将作为动画参数传递到函数中。维基百科上有一篇很好的文章,详细解释了它:

http://en.wikipedia.org/wiki/Extension_method