var stream: DataStream? = nil
switch stream {
case nil:
print("No data stream is configured.")
case let x?:
print("The data stream has \(x.availableBytes) bytes available.")
}
Refrenced par switch optional code, le contenu ci-dessus appelleront public func ~= <T>(lhs: _OptionalNilComparisonType, rhs: T?) -> Bool
fonction. Et il y a un autre modèle de commutation dans cette fonction:motifs de commutateur correspondant à Swift .Certaines/.NONE
public func ~= <T>(lhs: _OptionalNilComparisonType, rhs: T?) -> Bool {
switch rhs {
case .some(_):
return false
case .none:
return true
}
}
Ma question est la fonction whitch sera appelée par ce modèle? Il existe deux fonctions de surcharge ~ = dans Range.swift & Policy.swift, l'un d'entre eux sera appelé?
Merci, est-ce que chaque modèle de commutateur appellera une fonction de surcharge? Si oui, quelle fonction ce modèle va-t-il appeler? rhs commutateur { cas de .Certaines (_): return false cas .NONE: return true } – Maize
Je comprends, pas chaque modèle de commutateur appelleront ~> fonction de surcharge – Maize
Si certains types appelle la '>' ou '==' Je suppose que ça dépendra de l'implémentation du '~ =' – Andrea