protocolの実装で、理解ができない部分があり、下記のような実装ではvar name:
はsetなので、新たに値を代入できないことになるのでは?と思うのですが、下記の実装では、 var name:
に値が代入できてしまいます。
セットとかゲットとかの考え方が間違っていると思われますが、よければこの部分に関してアドバイスください。
@objc protocol MyDataSource { // 継承先でgetのみ(readonly)なプロパティを実装する var name: String { get } // 継承先でget/set両方可能なプロパティを実装する var vintage: Int { get set } } class ViewController: UIViewController, MyDataSource { //ここで値をセット var name: String = "" var vintage: Int = 0 override func viewDidLoad() { super.viewDidLoad()

回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。