0
我想要有两个绑定的类。这意味着,两个类都知道其他方法。Swift - 我可以实现类的相互泛型引用吗?
BaseController <> BaseView
这些类用于声明子类,例如
LoginController <> LoginView.
BaseController
具有强引用的种类<T : BaseView>
其视图,BaseView
应该有一个弱引用其的种类<T: BaseController>
我成功地通过了BaseView:
class BaseController <T: BaseScreen>
让我做的:
class LoginController : BaseController<LoginView>
,工程和控制器能够直接访问(能见度)的视图功能,我不需要投的每一次。
但是我不能做同样的观点,因为如果我这样做
class BaseView <T : BaseController>
那么编译器迫使我做
class BaseView <T : BaseController <BaseScreen>>
这会导致递归错误。
有没有一种方法可以做到使用泛型进行交叉引用?现在我坚持使用视图来简单地投射到控制器,以防万一需要。
太棒了!我仍然需要超类,因为它有一些方法实现,但我认为我也可以协议 – htafoya
您还可以使用基类并仅将该协议用于类型特定的东西。 – Palle