Я преобразовывал из swift 2 в swift 3. Я заметил, что я не могу преобразовать логическое значение в целое значение в swift 3: \.
let p1 = ("a" == "a") //true
print(true) //"true\n"
print(p1) //"true\n"
Int(true) //1
Int(p1) //error
Например, эти синтаксисы отлично работали в swift 2. Но в swift 3, print(p1)
дает ошибку.
Ошибка является error: cannot invoke initializer for type 'Int' with an argument list of type '((Bool))'
Я понимаю, почему происходят ошибки. Может ли кто-нибудь объяснить, в чем причина этой безопасности и как конвертировать из Bool в Int в swift 3?