【问题标题】:When to use self [duplicate]何时使用 self [重复]
【发布时间】:2015-06-01 20:37:06
【问题描述】:

我有一个简单的问题,并不是真正试图解决问题,而是出于好奇。

说这是我的 GameScene.swift 文件中的内容:

import SpriteKit

class GameScene: SKScene {

     //Some global properties 
     let player = SKSpriteNode(imageNamed: "Player")
     var score = Int()

     override func didMoveToView(view: SKView) {

         //Way 1 (which I see most of the time)
         player.position.....
         score = 1

        //Way 2 (which I see sometimes)
        self.player.position...
        self.score = 1
}

自我背后的流派是什么?我看过一些教程,人们喜欢使用 self 来表示明确。然而,大多数教程不使用 self,我什至看过 1 个教程,其中有人说除非明确需要 self(不知道这意味着什么),否则你不应该使用 self。

有人可以帮我弄清楚我应该使用方式 1 还是方式 2,有什么区别? 感谢您的回复,谢谢

更新

在编码超过 1 年之后,我实际上更喜欢方式 1,正如成员 djeck 在他的回答中所解释的那样。 我只在编译器需要时才使用 self 。我认为它使代码更易于阅读,并且在您必须使用无主自我或弱自我时也更容易识别

【问题讨论】:

标签: swift


【解决方案1】:

这只是一种风格偏好,可能不适合 stackoverflow 的 Q/A 格式,但 Ray Wenderlich 有一个风格指南。

为简洁起见,请避免使用 self,因为 Swift 不要求它访问对象的属性或调用其方法。

当需要区分初始值设定项中的属性名称和参数时,以及在闭包表达式中引用属性时(根据编译器的要求),请使用 self:

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多