小编Tom*_*ppy的帖子

简单快捷的代表在快速的操场上

我对Swift和一般编程非常陌生,有点像Fortran 77,以及最近一些简单的微控制器编程.我正在研究基础知识,一切顺利,直到我遇到了一些我无法理解的事情 - 代表们.所有的在线帖子都没有完全理解这个概念,至少对我而言,所以为了给自己一些我可以参考的东西,我在操场上设置了如下所示的基本模板.如果我运行下面的代码它工作并打印"完成的东西"到终端,但如果我使协议成为"类"协议,即"协议SomeDelegate:class {"并使"var委托"成为"弱var委托"按照各种帖子的建议,它不起作用 - 我做错了什么?

import UIKit

protocol SomeDelegate {
    func DoSomething()
}

class MyViewcontroller: UIViewController, SomeDelegate {

    func DoSomething() {
        print("Something done")
    }

}


class OtherClass {

   var delegate: SomeDelegate?


    func DoSomething() {

        delegate?.DoSomething()

    }
}


var myVar = OtherClass()
myVar.delegate = MyViewcontroller()
myVar.DoSomething()
Run Code Online (Sandbox Code Playgroud)

delegates swift

5
推荐指数
1
解决办法
999
查看次数

标签 统计

delegates ×1

swift ×1