C # оптимизирует перегруженные методы, вызываемые каскадом? - PullRequest
0 голосов
/ 25 мая 2011

У меня есть такой код:

class MainApplication {

    protected static string _since;

    protected static void updateSince()
    {
        MainApplication.updateSince(DateTime.Now);
    }

    public static void updateSince(DateTime since)
    {
        MainApplication.updateSince(since.ToString("yyyy-MM-dd HH:mm:ss"));
    } 

    public static void updateSince(string since)
    {
        // finally, doing something real
        MainApplication._since = since;
    }

    /* ... */  

}

И мне интересно, оптимизирует ли C # такой каскадный вызов?

1 Ответ

4 голосов
/ 25 мая 2011

Нет, C # вообще не оптимизирует вещи. Вы спрашиваете, оптимизирует ли это компилятор ...
Компилятор не «оптимизирует» это. Вы можете убедиться в этом, когда посмотрите на сгенерированный код IL.

...