gpt4 book ai didi

ios - 确定必要变量类型的设计模式

转载 作者:行者123 更新时间:2023-11-28 22:40:22 28 4
gpt4 key购买 nike

我希望就以下情况的设计模式或策略获得一些建议:

我有一个 Controller 类,给定一个媒体队列,它应该显示一个合适的播放器。媒体可以是视频、音频或其他。每种媒体类型都有相应的播放器类型,每个播放器都实现了一个通用协议(protocol),该协议(protocol)定义了播放、暂停、停止等方法。 Controller 类需要保留对当前播放器的引用,尽管该播放器可能是几种类型之一.一种想法是使用 id 类型保留引用:

@property id currentPlayer;

或者,我可以创建一个父类(super class) Player 并让每个播放器类型都成为 Player 的子类:

@interface VideoPlayer : Player

然后在 Controller 类中,我可以保留对 Player 类的引用,并在需要时将其转换为特定类型:

@property Player *currentPlayer;

这两个选项对我来说似乎都是错误的,所以我想知道是否有设计模式或其他更好的策略可以帮助我实现它。 Cocoa 或 Objective-C 中的任何示例都会特别有帮助 - 谢谢。

最佳答案

为什么不用
id<YourProtocol> currentPlayer;

关于ios - 确定必要变量类型的设计模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14698514/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com