@class und #import

Dieses Thema im Forum "Mac OS X Entwickler, Programmierer" wurde erstellt von Spacemojo, 08.09.2005.

  1. Spacemojo

    Spacemojo Thread Starter MacUser Mitglied

    Beiträge:
    616
    Zustimmungen:
    21
    Registriert seit:
    16.05.2004
    Hi!
    Ich habe zwei Klassen, nennen wir sie "FirstClass" und "SecondClass".

    Jede Klasse hat einen Pointer auf die jeweils andere Klasse.

    Wenn ich in den beiden Header-Dateien mit #import "...." den jeweils anderen Header einbinde, gibt es einen Fehler beim kompilieren. (z.B. "Parse error before 'FirstClass')

    Also binde ich in FirstClass die SecondClass mit #import ein
    und in SecondClass die FirstClass mit @class.

    Dann gibt es aber beim kompilieren jede Menge Warnungen ("FirstClass may not respond to ...").

    Außerdem noch das:
    In SecondClass.m steht drin:
    float firstClassFloatValue = [firstClass floatValue];
    Auf beiden Seiten steht also ein float. Jedoch sagt mir der Compiler:
    "warning: no '-floatValue' method found" (obwohl sie existiert, liegt aber am @class, glaub ich)
    "error: incompatible types in assignment" (obwohl [firstClass floatValue] wirklich einen float liefert)

    Wann soll ich jetzt @class und wann #import verwenden? Ich komm da nicht weiter.
    Hilft da ein precompiled header?

    Danke schon mal!

    Tobi
     
  2. chrizel

    chrizel MacUser Mitglied

    Beiträge:
    474
    Zustimmungen:
    0
    Registriert seit:
    14.09.2003
    In den Headers machst du das mit dem @class und in den Implementation-Files musst du die Headers dann schon gegenseitig importieren.
     
  3. Spacemojo

    Spacemojo Thread Starter MacUser Mitglied

    Beiträge:
    616
    Zustimmungen:
    21
    Registriert seit:
    16.05.2004
    Danke!
     
Die Seite wird geladen...

Diese Seite empfehlen