Хочу сравнить скорость выполнения простенькой программы, освобождающей память, написанной на C++ и на C#. В С++-коде освобождаю сам, в C#-коде - мусорщик...
Для начала скомпилил (g++ -O3) код:
int main(void)
{ char *ptr;
for(int i=0; i++; i<1000)
{ for(int j=0; j++; j<100)
ptr = new char[1024]; // 1Кб
delete[] ptr;
};
return 0;
};
Получил 15451 байт.
Далее скомпилил в VS2005 код:
#include "stdafx.h"
int main(void)
{ char *ptr;
for(int i=0; i++; i<1000)
{ for(int j=0; j++; j<100)
ptr = new char[1024]; // 1Кб
delete[] ptr;
};
return 0;
};
Получил 5632 байта.
Это что, выходит в VS2005 компилятор втрое лучше оптимизирует код, чем g++ ?