Verwendung von c ++ und objective-c in XCode 4.2

8

Ich hatte Probleme, c ++ und objective-c bei der Entwicklung einer iPhone App zu kombinieren. Ich hatte eine 3rd-Party-Bibliothek in der App zu verwenden. Ich hatte einen Plan, C oder C ++ zu verwenden, um die Bibliothek zu umhüllen, und dann Objective-C zu verwenden, um es aufzurufen. Nachdem ich die Klasse mit C ++ beendet hatte, hatte ich Schwierigkeiten, sie in objective-c zu verwenden. Gibt es einen Beispielcode? Danke.

in der Ziel-c-Kopfdatei. Ich schreibe

%Vor%

und in der mm-Datei schreibe ich:

%Vor%

Ist es schreiben?

    
seanxiaoxiao 12.02.2012, 16:58
quelle

3 Antworten

5
  

Das Aufrufen von C ++ - Code aus Objective-C-Code beinhaltet das Beenden der Datei mit   .mm (anstelle von .m), so dass der Objective-C ++ - Compiler verwendet wird.

     

Dieser Compiler kann sowohl C ++ als auch Objective-C verstehen.

     

Mit anderen Worten: Mit dem ObjC ++ - Compiler können Sie C ++ - Code direkt einfügen   Objective-C-Methoden und umgekehrt.

Sehen Sie sich Cocoa_With_Carbon_or_CPP Beispiel und Strategien für die Verwendung von C ++ in Objective- C Projekte (und umgekehrt) Artikel.

    
Parag Bafna 12.02.2012, 19:00
quelle
8

In XCode gibt es ein Flag, um alle Dateien als Objective-C ++ zu kompilieren. Ich habe es verwendet, um große C ++ - Bibliotheken in iOS-Programme zu kompilieren.

Wenn Sie sich die "Build Settings" ansehen, gibt es einen Ort, der "Compile Sources As" geschrieben hat. Dort gibt es ein Dropdown-Menü, in dem Sie Objective-C ++ auswählen können. In der Befehlszeile clang / gcc denke ich, dass es "-x Ziel-C ++" ist.

    
John Smith 12.02.2012 17:09
quelle
6

Benennen Sie Ihre Datei einfach so um, dass sie die Erweiterung .mm anstelle von .m hat.

Um C ++ - Code mit Objective-C-Code zu mischen, benötigen Sie einen Compiler für Objective-C ++ . XCode kompiliert standardmäßig .m Dateien mit Objective-C Compiler und .mm eins mit Objective-C ++ eins.

    
Krizz 12.02.2012 17:05
quelle

Tags und Links