Я просматривал документацию и заметил, что метод Console.WriteLine()
имел несколько перегрузок. В частности, мое любопытство и частичная путаница относятся к ним:
public static void WriteLine(string format, params object[] arg);
public static void WriteLine(string format, object arg0);
public static void WriteLine(string format, object arg0, object arg1);
public static void WriteLine(string format, object arg0, object arg1, object arg2);
public static void WriteLine(string format, object arg0, object arg1, object arg2, object arg3);
Кажется излишним. В чем нуждаются остальные четыре перегрузки над первым? Первый метод способен делать все, что могут сделать другие методы. Есть ли проблема с производительностью, которую они пытались решить, предоставляя дополнительные перегрузки, которые обрабатывают до четырех аргументов (последний)? Являются ли накладные расходы доступным массивом до четырех аргументов, достаточных для обеспечения этих перегрузок?