Здравствуйте, Pavel Dvorkin, Вы писали:
PD>Этот код НЕ вызывается из обработчика ВЕБ-форм. В этом случае так писать действительно не стоит. Этот код берет проверенные значения из БД, где для их хранения НЕ ОТВЕДЕНО 500 char. По-прежнему будешь утверждать ?
Я тут не поленился и сделал тест...
const char* szFirstName = "iddqd";
const char* szLastName = "idkfa";
for(size_t i=0;i<100000;++i)
{
char szTotal[500];
sprintf(szTotal,"%s %s", szFirstName, szLastName);
}
0.0583748
private static string Concat(string s1, string s2)
{
return s1 + s2;
}
...
for (int i = 0; i < 100000; ++i)
Concat("iddqd", "idkfa");
0.02506806
Итого: C# в 2 раза быстрее чем С++
(при том что в C# при каждом сложении происходит выделение памяти и работа идет с юникодом) и самое главное то что код на C# безопасен.
ЗЫ Замеры производились 100 раз. Самые быстрые и самые медленные результаты отбрасывались, остальные усреднялись.
ЗЗЫ VS 2003
... << RSDN@Home 1.1.4 beta 6a rev. 436>>