0

可能重复:
Objective-C 多重继承

在我的 iPhone 应用程序中,我想使用 googleAnalytics,但问题是我必须从 Google 提供的 GAITrackedViewController 继承。问题是我已经扩展了 GLKViewController 并且objective-c 不允许多重继承。一些主题建议使用协议。我对它们一无所知,我以前从未使用过它们,但我认为为时已晚,因为我已经设计并实施了我的项目。我能做什么?有没有解决这类问题的例子?

4

2 回答 2

1

多重继承很少是一个好主意。

实现多种协议。阅读 Objective-C 关于协议的介绍,它们类似于 java 接口。

如果这不起作用,因为这两个类不提供协议,您仍然可以使用聚合:定义两个成员,一个用于 glkVieController,另一个用于 gaiTrackedViewController

于 2013-01-08T20:59:19.887 回答
1

Objective C 不支持多重继承。但是通过使用组合、协议和消息转发,您将获得相同的结果。

您应该在此链接-AppleDoc上参考苹果文档中的多重继承和消息转发

对于组成检查此链接

对于 Objective C 中的协议,请检查此链接 Protocol in Objective C

于 2013-01-08T21:27:04.593 回答