Objective-C LanguageAan de slag met Objective-C Language


versies

Versie Publicatiedatum
1.0 1983-01-01
2.0 2007-10-27
Modern 2014/03/10

Hallo Wereld

Dit programma zal "Hallo wereld!"

#import <Foundation/Foundation.h>

int main(int argc, char * argv[]) {
    NSLog(@"Hello World!");
}
 

#import is een pre-processorrichtlijn, die aangeeft dat we de informatie uit dat bestand willen importeren of in het programma willen opnemen. In dit geval kopieert de compiler de inhoud van Foundation.h in het Foundation framework naar de bovenkant van het bestand. Het belangrijkste verschil tussen #import en #include is dat #import "slim" genoeg is om bestanden die al in andere #includes zijn opgenomen niet opnieuw te verwerken.

De C Language-documentatie legt de main uit.

De functie NSLog() drukt de string af die aan de console is verstrekt, samen met enkele foutopsporingsinformatie. In dit geval gebruiken we een letterlijke Objective-C-string: @"Hello World!" . In C zou je dit schrijven als "Hello World!" Apple's Foundation Framework voegt echter de NSString klasse toe die veel nuttige functionaliteit biedt en wordt gebruikt door NSLog. De eenvoudigste manier om een exemplaar van NSString is als volgt: @" string content here " .

Technisch gezien maakt NSLog () deel uit van Apple's Foundation Framework en maakt het eigenlijk geen deel uit van de Objective-C-taal. Het Foundation Framework is echter overal aanwezig in de programmering van Objective-C. Aangezien het Foundation Framework geen open-source is en niet kan worden gebruikt buiten de ontwikkeling van Apple, zijn er open-source alternatieven voor het framework die worden geassocieerd met OPENStep en GNUStep .


Programma samenstellen

Ervan uitgaande dat we ons Hello World-programma willen samenstellen, dat bestaat uit een enkel hello.m bestand, is het commando om het uitvoerbare bestand te compileren:

clang -framework Foundation hello.m -o hello
 

Dan kun je het uitvoeren:

./hello
 

Dit levert het volgende op:

Hello World!
 

De opties zijn:

  • -framework : geeft een raamwerk aan om het programma te compileren. Aangezien dit programma Foundation gebruikt, nemen we het Foundation-framework op.

  • -o : deze optie geeft aan naar welk bestand we ons programma willen uitvoeren. In ons geval hello . Indien niet opgegeven, is de standaardwaarde a.out .