Why doesn't redeclaration of 'optional binding' create an error?
问题 I am doing this in Playground, but I am not getting any error. Am I not recreating constant range ? Is it happening in 2 different scopes? What's happening in the background that makes this not an error? if let range = add1.rangeOfString(", ") { print(add1.substringToIndex(range.startIndex)) print (range) } if let range = add1.rangeOfString(", ") { print(add1.substringToIndex(range.startIndex)) print (range) } 回答1: Variables introduced with Optional binding of if-let is local after the let