Я исхожу из фона Java, где, когда вы объявляете внутренний класс, он либо статичен, либо не имеет доступа к экземпляру внешнего класса, либо не является статическим, и может обращаться к экземпляру внешнего класс, который работает. См. http://en.wikipedia.org/wiki/Inner_class#Types_of_nested_classes_in_Java
Есть ли у Swift какое-либо понятие об этом? Из моего тестирования я не могу получить доступ к объекту Outer
self
, но я определенно мог бы сделать что-то неправильно.
class Outer {
let value = ""
class Inner {
func foo() {
let bar = value // 'Outer.Type' does not have a member named 'value'
}
}
}