不同类(但同一基类)使用相同的协议扩展?
创始人
2025-01-09 09:30:05
0

使用泛型和协议继承。

例如,我们有两个不同的类A和B,它们都是基于父类C,我们想为它们添加一个同样的协议扩展。我们可以这样做:

首先,我们定义一个协议,即我们想要实现的扩展:

protocol MyProtocol {
    func myFunction()
}

然后,我们可以使用协议继承来实现我们的扩展:

protocol MyProtocolA: MyProtocol {}
protocol MyProtocolB: MyProtocol {}

现在,我们可以在类A和类B中使用这个协议扩展:

class A: C, MyProtocolA {
    // ...
}

class B: C, MyProtocolB {
    // ...
}

extension MyProtocol where Self: C {
    func myFunction() {
        // ...
    }
}

这里,我们使用了泛型where子句,因为我们只希望将MyProtocol扩展应用于基类C的子类,而不是应用于任何类。

现在,类A和类B都可以使用相同的扩展了,而且我们还可以保证这个扩展只适用于基类C的子类。

相关内容

热门资讯

外挂演示!智星德州插件2024... 外挂演示!智星德州插件2024最新版,哈糖大菠萝辅助器-本来真的有辅助脚本(哔哩哔哩)智星德州插件2...
外挂办法!pokernow辅助... 外挂办法!pokernow辅助工具,poker master辅助-原来一直都是有辅助攻略(哔哩哔哩)...
外挂方案!智星菠萝德州插件怎么... 外挂方案!智星菠萝德州插件怎么下载,智星德州辅助译码插件靠谱吗-一直有辅助方法(哔哩哔哩)1、下载好...
外挂窍门!哈糖大菠萝怎么开挂,... 外挂窍门!哈糖大菠萝怎么开挂,德普之星透视辅助软件-原来是真的有辅助app(哔哩哔哩)小薇(辅助器软...
外挂法子!德州局透视脚本,来玩... 外挂法子!德州局透视脚本,来玩app破解版-果然是真的有辅助软件(哔哩哔哩)1.德州局透视脚本 选牌...
外挂诀窍!约局吧德州真的有透视... 外挂诀窍!约局吧德州真的有透视挂吗,xpoker辅助助手-本来真的有辅助技巧(哔哩哔哩)1、全新机制...
外挂操作!竞技联盟破解版最新版... 外挂操作!竞技联盟破解版最新版,uupoker透视-竟然一直总是有辅助脚本(哔哩哔哩)竞技联盟破解版...
外挂练习!werplan外开挂... 外挂练习!werplan外开挂,德普之星透视免费-竟然有辅助神器(哔哩哔哩)1、每一步都需要思考,不...
外挂演示!fishpoker透... 外挂演示!fishpoker透视,智星德州插件2024最新版-真是真的是有辅助教程(哔哩哔哩)1、智...
外挂绝活!sohoo poke... 外挂绝活!sohoo poker辅助,红龙poker辅助-其实有辅助工具(哔哩哔哩)1、下载好soh...