Czy używanie zmiennych wpływa na wydajność?

Czy używanie zmiennych wpływa na wydajność?
SM
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 47
0

Czy zastosowanie zmiennych tj w 1 przykładzie przekłada się jakoś na wydajność?? Wiem, że w zasadzie tego nie odczuję jednak lubię się bawić w optymalizację kodu.
Jak do tej pory posługiwałem się jedynie AutoHotkey'em na średnio-zaawansowanym poziomie i tam każdy niepotrzebny znak może wpłynąć na wydajność. W c++ jak do tej pory napisałem tylko jedną funkcję i jestem ciekaw jak kompilator radzi sobie z takimi niuansami.

Kopiuj
(...)
for(int Col = 0; Col<ColCount; Col++) // For CNum, Text in Array[Index]
{
	int Row  = (Array[Index].Name)-1;
	int CNum = (A->A[Col].Name)-1;
	wchar_t * Text = AHK_GetString(A->A[Col]);
	ListView_SetItemText(hWnd, Row, CNum, Text)
} 
(...)

VS

Kopiuj
(...)
for(int Col = 0; Col<ColCount; Col++) // For CNum, Text in Array[Index]
{
	ListView_SetItemText( hWnd                        // ListView Handle
              , (Array[Index].Name)-1		 // Row
              , (A->A[Col].Name)-1		 // CNum
              , AHK_GetString(A->A[Col]))	 // *Text
}
(...)
kq
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Szczecin
2

Nawet przeciętnie optymalizujący kompilator nie powinien mieć problemem z wyemitowaniem tego samego kodu dla obu przypadków.

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
1

gcc -S program.cpp
I zobacz co ci wygeneruje w obu przypadkach. Powtórz to także z -O1 -O2 i -O3

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.