Tag: Swift/関数とクラス

目次

関連ページ

参考情報

失敗可能イニシャライザ

  • 失敗する可能性のあるイニシャライザを定義できる。
    class Person {
        var age:Int
        var name:String
        init?(age:Int, name:String) {
            self.age = age
            self.name = name
            if age == 0 {
                return nil
            }
        }
    }
    
    
    var person:Person? = Person(age: 10, name: "abc")
    print(person!.name)
    
    

メソッド引数に関して

  • イニシャライザとメソッドで省略可能となる引数がことなるので注意。Objective-Cとの互換性のためか。
    final class Person  {
        init(a:Int, b:Int, c:Int) {    
        }
        func action(a:Int, b:Int, c:Int) {    
        }
    }
    
  • イニシャライザの場合全てのラベル指定が必要。
     var person = Person(a:1, b:2, c:3)
    
  • メソッドの場合最初のラベルは省略。
     person.action(1, b:2, c:3)
    

クラスメソッドとクラス変数


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-07-26 (火) 16:32:28