extensionを使うとストラクチャや型に対して機能を追加できるとのこと。
いまいちわからないので動かして理解してみます。
プリミティブな型IntにもつかえるようなのでIntに自身の値を表示するfunctionを追加してみます。
extension.swift
var tmp :Int = 5
print(tmp) //定石の表示方法
extension Int {
func p() ->Int{ //Int型に自身の値をprintする機能pを追加
print(String(self) )
return 0
}
}
tmp.p() //5 Int型に拡張した機能pで値を表示
print(tmp.p() ) //0
どういう時に役に立つのかまだわかりませんが動きが分かったのでここまで。