Mono.Cecil-如何知道一个具有可变参数的方法?

时间:2019-01-09 14:24:52

标签: c# cil mono.cecil

在C#中,我们有__arglist关键字,它使方法的变量参数像这样:

public static void PrintFormat(string format, __arglist) 
{
    ....
}

它编译为:

.method public hidebysig static vararg void PrintFormat ( string format ) cil managed 
{
    ....
} 

请注意,vararg。那么如何知道Mono.Cecil中具有可变参数的方法呢?

1 个答案:

答案 0 :(得分:0)

@JeroenMostert指出了这一点。 Source

public static bool IsVarArg (this IMethodSignature self)
{
    return (self.CallingConvention & MethodCallingConvention.VarArg) != 0;
}