Tôi đã tự hỏi nếu có bất kỳ sự khác biệt trong cách mã sau đây đã được biên dịch thành lắp ráp. Tôi đã nghe nói rằng trường hợp chuyển đổi là hiệu quả hơn nếu khác, nhưng trong ví dụ này tôi không hoàn toàn chắc chắn nếu đó sẽ là trường hợp.trường hợp chuyển đổi vs nếu khác
if(x==1){
...
}else if(x==2){
...
}else{
...
}
và
switch(x){
case 1:
...
break;
case 2:
...
break;
default:
...
}
Bạn đã xem xét việc trình biên dịch phát ra trình biên dịch và so sánh mã kết quả? –
Thay vào đó, hãy tránh và sử dụng [hash] (http://hardforo.com/thread-531.html) (mảng kết hợp). Nó sạch hơn. – boctulus
Tìm thấy một cuộc thảo luận tốt ở đây: http://stackoverflow.com/questions/1028437/why-switch-case-and-not-if-else-if – Helene