这个List <string> ListName作为参数?

soo*_*ise 3 c# list this

将此List作为方法的参数时,这意味着什么?

public static void KillZombies(this List<Zombie> ZombiesToKill, int NumberOfBullets)
{
    ...
}
Run Code Online (Sandbox Code Playgroud)

Jus*_*ner 8

这意味着该方法是一个扩展方法:

调用该方法的代码可能看起来有点令人困惑:

var zombies = new List<Zombie>();
zombies.KillZombies(15);
Run Code Online (Sandbox Code Playgroud)

实际上,这是一种语法糖,相当于:

public static void KillZombies(List<Zombie> zombiesToKill,
                               int numberOfBullets)
{
    // Code here
}
Run Code Online (Sandbox Code Playgroud)

调用代码看起来像:

var zombies = new List<Zombie>();
KillZombies(zombies, 15);
Run Code Online (Sandbox Code Playgroud)