Cho sau đây enum trong C# và một chuyển đổi/trường hợp để trả về màu đường viền của một hộp văn bản theo trạng thái của nó chẳng hạn.Kết hợp trường hợp mặc định với các trường hợp khác
enum TextboxState {
Default,
Error
}
switch(foo) {
default:
case TextboxState.Default: return Color.Black;
case TextboxState.Error: return Color.Red;
}
Vì vậy, về cơ bản tôi xác định một thực và không chỉ bởi trạng thái mặc định ước aka TextboxState.Default
bằng cách thêm các trường hợp default:
. Tôi chỉ muốn làm điều này để ngăn chặn những thay đổi đột ngột trong tương lai nếu các giá trị mới được thêm vào enum.
Theo cuốn sách Swift này là không thể:
“Nếu nó không phải là thích hợp để cung cấp một trường hợp chuyển đổi cho mỗi giá trị có thể , bạn có thể xác định một nhận tất cả mặc định trường hợp để trang trải bất kỳ giá trị không được giải quyết một cách rõ ràng. nhận tất cả trường hợp này được chỉ định bởi mặc định từ khóa, và phải luôn luôn xuất hiện cuối cùng.”
Đoạn là khá rõ ràng về điều đó, vì vậy tôi giả định mô hình của tôi trên đây không áp dụng đối với Swift hay tôi bỏ lỡ một cái gì đó? Có cách nào khác để lưu trữ một cái gì đó giống như mã trên không?
Để tham khảo, phần hướng dẫn được ghi lại trong phần chuyển đổi tại đây: https://developer.apple.com/library/prerelease/mac/documentation/Swift/Conceptual/Swift_Programming_Language/Statements.html –