> On 18 Oct 2016, at 09:58, Седых Александр via swift-users
> <swift-users@swift.org> wrote:
>
> This code work:
>
> let one: Int? = 5
> let two = 5
> let result = one == two
>
> print(result)
>
> //print true
>
> Why we can access to Optional value without unwrap within comparison
> operations?
The 'one' value isn't being unwrapped; the 'two' value is being wrapped in an
optional, and then compared. In effect, it's doing:
let result = one == Optional(two)
This allows you to pass in non-optional values to functions that take optional
arguments, e.g.
func printme(_ i:Int?) { print("\(i)") }
printme(one)
printme(two)
Alex
_______________________________________________
swift-users mailing list
swift-users@swift.org
https://lists.swift.org/mailman/listinfo/swift-users