Sto provando le prestazioni di auto e register ma non ci sono riuscito, credo perchè c++ 2005 utilizza delle ottimizzazioni interne che risolvono questo genere di for:
//Prende il tempo attuale
long start=time(NULL);
long len=10000000000000000000;
auto int a=2;
for(long a1=0;a1<len;a1++)
for(long a2=0;a2<len;a2++)
for(long a3=0;a3<len;a3++)
for(long a4=0;a4<len;a4++)
for(long a5=0;a5<len;a5++)
for(long a6=0;a6<len;a6++)
for(long a7=0;a7<len;a7++)
for(long a8=0;a8<len;a8++)
for(long a9=0;a9<len;a9++)
for(long a10=0;a10<len;a10++)
for(long a11=0;a11<len;a11++)
for(long a12=0;a12<len;a12++)
{
a+=a1+a2+a3+a4+a5+a6+a7+a8+a9+a10+a11+a12;
}
cout<<a<<"Tempo auto:"<<time(NULL)- start<<"\n";
start=time(NULL);
register long b=1;
for(register long a1=0;a1<len;a1++)
for(register long a2=0;a2<len;a2++)
for(register long a3=0;a3<len;a3++)
for(register long a4=0;a4<len;a4++)
for(register long a5=0;a5<len;a5++)
for(register long a6=0;a6<len;a6++)
for(register long a7=0;a7<len;a7++)
for(register long a8=0;a8<len;a8++)
for(register long a9=0;a9<len;a9++)
for(register long a10=0;a10<len;a10++)
for(register long a11=0;a11<len;a11++)
for(register long a12=0;a12<len;a12++)
{
b+=a1+a2+a3+a4+a5+a6+a7+a8+a9+a10+a11+a12;
}
cout<<b<<"Tempo register:"<<time(NULL)- start;
Qualcuno, lo utilizza register per velocizzare delle operazioni?