猿问

一段C#代码看不懂,麻烦高手解释一下,,谢谢!

public T visit<T>(object arg, params object[] extrasArgs)
        {
            var methed=from m in GetType().GetMethods()
                       where m.Name == "Visit" && m.GetParameters().Length == 1 + extraArgs.Length
                               && arg.GetType().IsAssignableFrom(m.GetParameters()[0].ParameterType)
                               && m.ReturnType == typeof(T)
                       orderby m.GetParameters()[0].ParameterType.Name == arg.GetType().Name descending, m.GetParameters()[0].ParameterType.Name ascending
                       select m;
            return (T)method.First().Invoke(this, new[] { arg }.Concat(extraArgs).ToArray());
        }

 

 

今天看OXITE的Visitor,结果看的一头雾水,,麻烦哪位大侠给解释一下,,,

(1)public T visit<T>(object arg, params object[] extrasArgs)这种写法是什么意思

(2)麻烦对这个方法里面的代码解释一下

小弟拜谢


Smart猫小萌
浏览 550回答 1
1回答
随时随地看视频慕课网APP
我要回答