|
안녕하세요. 맨날 눈팅만 하는 사람입니다.
갑자기 궁금증이 생겨서 그렇습니다.
if구문과 switch구문의 속도 차이가 궁금해서 인터넷으로 검색해보니 switch구문이 더빠르다구 하는데
제가 이리저리 테스트 해보면 if구문이 더 빠르거나 같은것 같던데요.
과연 어느것이 더 빠를까요?
혹시 제가 테스트를 잘못한건 아닌지해서 문의 드립니다.
테스트 예제임돠
void __fastcall TForm1::Button1Click(TObject *Sender)
{
int a = 1;
int test = 0;
int tm = GetTickCount();
if(a == 0) { test = a; }
else if(a == 1)
{
for(int i = 0; i < 10000000; i++) test = a;
}
else if(a == 2)
{
for(int i = 0; i < 10000000; i++) test = a;
}
else { test = a; }
Edit1->Text = GetTickCount() - tm;
tm = GetTickCount();
switch(a)
{
case 0: test = a; break;
case 1:
for(int i = 0; i < 10000000; i++) test = a;
break;
case 2:
for(int i = 0; i < 10000000; i++) test = a;
break;
default: test = a; break;
}
Edit2->Text = GetTickCount() - tm;
}
|