0

重複の可能性:
Objective-C の多重継承

iPhone アプリで googleAnalytics を使用したいのですが、Google が提供する GAITrackedViewController から継承する必要があります。問題は、私が既に GLKViewController を拡張しており、objective-c が複数の継承を許可していないことです。一部のトピックでは、プロトコルの使用を提案しています。以前に使用したことがないのでわかりませんが、すでにプロジェクトを設計して実装しているため、手遅れだと思います.どうすればよいですか? そのような問題を解決する例はありますか?

4

2 に答える 2

1

ObjectiveCは多重継承をサポートしていません。ただし、コンポジション、プロトコル、メッセージ転送を使用すると、同じ結果が得られます。

このリンクの多重継承とメッセージ転送については、アップルのドキュメントを参照してください-AppleDoc

作曲については、このリンクを確認してください

Objective Cのプロトコルについては、このリンクを確認してくださいObjectiveCのプロトコル

于 2013-01-08T21:27:04.593 に答える
1

多重継承が良い考えになることはめったにありません。

複数のプロトコルを実装します。プロトコルについての Objective-C の紹介を読む, それらは Java インターフェイスに似ています.

これらの 2 つのクラスがプロトコルを提供しないため、それが機能しない場合でも、集約を使用できます。1 つは glkVieController 用、もう 1 つは gaiTrackedViewController 用の 2 つのメンバーを定義します。

于 2013-01-08T20:59:19.887 に答える