let _ = Timer.scheduledTimer(withTimeInterval: 2.0, repeats: true) { (timer) in
print("conunter \(counter += 1)")
}
Sortie:Pourquoi cela se passe-t-il dans Swift?
conunter()
conunter()
conunter()
.........
Mais si je le fais
let _ = Timer.scheduledTimer(withTimeInterval: 2.0, repeats: true) { (timer) in
counter += 1
print("conunter \(counter)")
}
Il produit résultat escompté. Pourquoi cela se passe-t-il?
Un peu en rapport: [Quelle était la raison pour laquelle l'évaluation de l'affectation de Swift a été annulée?] (Https://stackoverflow.com/questions/34173084/what-was-the-reason-for-swift-assignment-evaluation-to- vide). –