这是用self访问实例变量的好方法吗?如果我经常使用

Coc*_*ser 1 swift

class Persion: NSObject {
     var name = "John"

     func greeting() {
          let message = "Hello \(self.name)"
          print(message)
     }
}
Run Code Online (Sandbox Code Playgroud)

看看Persion类的问候方法.我正在使用self.name让我明白"我现在使用实例变量而不是局部变量"这是一个用self访问实例变量的好方法吗?如果我经常使用.

rob*_*off 5

是否self总是或仅在必要时使用的问题是意见问题.关于Swift是否应该要求使用访问实例变量的swift-evolution邮件列表以及它应该提出的正式提案存在很多争论.该提议(由Swift核心团队成员制作)尚未在撰写本文时作出决定,但可能会很快决定(在Apple员工休假后).self

https://www.google.com/search?q=swift-evolution+mandatory+self+site:lists.swift.org

https://www.google.com/search?q=swift-evolution+require+self+instance+site%3Alists.swift.org

UPDATE

该提案遭到拒绝.Swift不会要求您使用self来访问实例变量.您仍然可以选择在任何地方使用它作为标准编码样式的一部分,也许有人会编写一个"linter"来验证其输入文件在任何地方都使用它.