Điều này không thực sự là một vấn đề, nhưng nhiều hơn một sự tò mò của tôi mà tôi đã không thể giải quyết bằng chính phương tiện của mình. Tôi chắc chắn sẽ không mất ngủ trên đó.Bỏ qua "Case" từ "Select ... Case" Statement
Trong VB.NET, cú pháp câu lệnh switch là (như được nêu trên MSDN here):
Select [ Case ] testexpression
[ Case expressionlist
[ statements ] ]
[ Case Else
[ elsestatements ] ]
End Select
Lưu ý rằng trong dòng đầu tiên, Case
là trong dấu ngoặc vuông, nghĩa là nó là không bắt buộc.
Và quả thực, ví dụ sau biên dịch và thực thi trong cùng một cách như thể từ khóa Case
đã được bao gồm, ít nhất, trong các ví dụ thô sơ Tôi đã thử:
Select myIntVar
Case 0
Return "Nothing"
Case 1
Return "Just one"
Case Else
Return "Something else"
End Select
Vì vậy câu hỏi của tôi là như theo sau: Ngoài cú pháp, có sự khác biệt bất kỳ sự khác biệt nào giữa việc mở câu lệnh chuyển đổi với Select
và Select Case
hay không?
Không có gì tôi có thể nghĩ đến. Nếu 'MSDN' không đề cập đến bất cứ điều gì người ta có thể giả định nó không. Tôi ghét giả định ... – OneFineDay
câu hỏi thú vị, tôi đặt cược rằng "TRƯỜNG HỢP" là tùy chọn vì nó dường như xếp hàng với một tuyên bố chuyển đổi C# mà không có nó anyways (Có lẽ phần "CASE" chỉ là một carryover từ cũ vb), và Nó có thể biên dịch theo cùng một cách trong CLR –
Một khía cạnh thú vị khác là mặc dù, theo MSDN, 'Case' là tùy chọn, nếu bạn bỏ nó ra, Visual Studio sẽ tự động thêm nó cho bạn. –