Swift學習(十):方法(實例方法,類型方法,mutating,@discardableResult)

方法(Method)

  • 枚舉、結構體、類都可以定義實例方法、類型方法
  1. 實例方法(Instance Method):通過實例對象調用,相當於OC中的對象方法
  2. 類型方法(Type Method):通過類型調用,用static或者class關鍵字定義,相當於OC中的類方法

  • self 
  1. self在實例方法中代表實例對象 
  2. self在類型方法中代表類型
  3. 在類型方法static func getCount中cout等價於self.cout、Car.self.cout、Car.cout

mutating

  •  結構體和枚舉是值類型,默認情況下,值類型的屬性不能被自身的實例方法修改 
  • 在func關鍵字前加mutating可以允許這種修改行爲


@discardableResult

在func前面加個@discardableResult,可以消除:函數調用後返回值未被使用的警告

  p.moveX(deltaX: 10)的返回值未被使用,原本會報警告,但是使用@discardableResult就沒有了警告

   get的返回值未被使用,,原本會報警告,但是使用@discardableResult就沒有了警告

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章