Void
Void bản thân nó là một kiểu trả về là một bộ giá trị không có phần tử nào. Bạn có thể sử dụng Void và () thay thế cho nhau.
Hãy xem những ví dụ này,
Never
Kiểu trả về Never thông báo cho trình biên dịch rằng không cần phải trả về một tuple () trống. Ngoài ra, hàm với kiểu trả về never được sử dụng cho điểm thoát của quá trình thực thi hiện tại như crash, fatal error (lỗi nghiêm trọng), abort hoặc exit.
public func abortVoid() -> Void {
fatalError()
}
public func abortNever() -> Never {
fatalError()
}
func bar1() -> Int {
if true {
abortVoid() // ERROR: Missing return in a function expected to return 'Int'
} else {
return 1
}
}
func bar2() -> Int {
if true {
abort() // No ERROR, but compiler sees it returns Never and warns:
return 2 // Will never be executed
} else {
return 1
}
}