2012-08-23 13 views
5

thể trùng lặp:
‘break’ statement when using curly braces in switch-casephạm vi địa phương trong một tuyên bố chuyển đổi - nơi nào chúng ta phá vỡ?

Trong khi sáp nhập một gói Tôi đã xem qua bản Tuyên Bố này

switch (a) 
{ 

case 1: 
    { 
     string str = "a is 1"; 
     cout << str << endl; 
    } 
    break; 
case 2: ... 
... 

} 

câu hỏi của tôi là không vấn đề gì nếu tôi đặt giờ nghỉ bên trong hay bên ngoài phạm vi trong trường hợp 1? here chúng đặt bên ngoài. Tôi đã thử this và không thấy bất kỳ sự khác biệt nào. Điều đó có ý nghĩa với tôi rằng không có sự khác biệt nhưng chàng trai với PHD từ nhóm của tôi nói rằng anh ấy nhớ rằng có thể có một sự khác biệt nhưng anh ấy không thể nhớ nó là gì ..

+0

http://stackoverflow.com/questions/7374486/break-statement-when-using-curly-braces-in-switch-case –

+0

Tôi khuyên bạn nên phá vỡ phạm vi, mặc dù điều đó không quan trọng. Đối với cảm giác ruột của tôi, nó có vẻ là phong cách tốt hơn. –

+0

@KingsIndian Thanks. Không phải chuỗi đầu tiên xuất hiện trong khi googling vấn đề này –

Trả lời

9

Không có sự khác biệt cho dù bạn đặt break bên trong hoặc bên ngoài phạm vi.

1

A break đạt được bên trong một khối switch làm cho số liệu tiếp theo bên ngoài khối switch này để thực thi. Do đó, không quan trọng bạn đặt break, bên trong hoặc bên ngoài phạm vi.

Các vấn đề liên quan