Как c# компилаторът concat низове

Възможен дубликат:
Дали C# оптимизира конкатенацията на низови литерали?

string foo = "bar1" + "bar2" + "bar3";

C# компилаторът прилага ли вътрешно метода string.Concat?

Тогава би било по-добре да използвате оператора + за четимост.


person Pascal    schedule 14.01.2012    source източник
comment
да, измама е, вижте този отговор в същата публикация.   -  person gideon    schedule 14.01.2012


Отговори (1)


С литералите това е еквивалентно на:

string foo = "bar1bar2bar3";

Не се извършва конкатенация - те се комбинират по време на компилиране в константа.

person Chris Shain    schedule 14.01.2012
comment
Мисля, че той имаше предвид в случай, когато бихте казали string foo = "bar: " + bar + " (bar bar)"; където bar е неизвестен по време на компилиране. - person Tim; 14.01.2012
comment
Възможно е, но той не е написал въпроса по този начин. - person Chris Shain; 14.01.2012