8.5 Vorwärtsdeklaration

Es gibt eine weitere Lösung für die Fehler aus dem vorigen Abschnitt: Sie können in der Header-Datei die @class-Direktive anstelle der import-Anweisung verwenden.

CreatingAController/SimpleBrowser3/BrowserController.h

   #import <Cocoa/Cocoa.h>
▸ @class WebView;
   @interface BrowserController : NSObject {
       WebView *myWebView;
   }
   @property(assign) IBOutlet WebView *myWebView;
   -(IBAction) loadPreviousPage: (id) sender;
   @end

In der Datei BrowserController.h muss der Compiler nur wissen, das WebView eine gültige Klasse ist. Sie muss nichts über die Klasse wissen. Die @class-Direktive macht genau das. Sie fügt nicht die ganze Header-Datei ein, die uns sagt, was ein Objekt vom Typ WebView alles kann – wir müssen das an dieser Stelle nicht ...

Get Cocoa-Programmierung now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.