Indholdsfortegnelse:
- typedef typeName identifikator;
- const type identifikator = værdi; #define identifikationsværdi
- En NSDictionary opregning er over nøgler.
- gør {sætning (er) til at udføre, mens tilstanden er sand} ;
- Stop eksekveringen og vend tilbage til opkaldsfunktionen.
- Deklarere klasser og sende meddelelser i Objective-C
- #import "Superclass. H" @interface Klassenavn: Superclass {instance variable declarations;} metodedeklarationer @property (attributes) instance variable declaration; -d
Video: Java Tutorial for Beginners [2019] 2025
Af Neal Goldstein
Når du skriver et mål-C-program til dine iOS- eller Mac OS X-apps i Objective-C, alt du laver giver et sæt instruktioner til den computer, du skal følge. Grundlæggende manipulerer programmer tal og tekst, og alt taget i betragtning har et computerprogram kun to dele: variabler (og andre strukturer), som "holder" de data og instruktioner, der udfører operationer på disse data.
Gør en mål-C-erklæring
Programmering af iOS- og Mac OS X-apps i Objective-C handler om at lave en erklæring. Du kan genkende en sætning i Mål-C umiddelbart ved at notere semikolonet i slutningen:
erklæring;
Du vil se andre linjer kode, men medmindre linjen ender med et semikolon, er det ikke en mål-C-erklæring.
Mål-C-indbyggede datatyper og nye datatyper
De variabler, du erklærer i Objective-C - Objective-C datatyper - skal være en type, som kompilatoren kan genkende. Objective-C leveres med en række indbyggede datatyper samt mekanismer til at oprette nye til programmering af dine iOS- eller Mac OS X-applikationer.
Type | Beskrivelse | Størrelse |
---|---|---|
char | Et tegn | 1 byte |
int | Et helt tal - et helt tal | 4 bytes |
float | Enkeltpræcision floating point nummer | 4 byte |
dobbelt | Dobbelt præcision floating point nummer | 8 byte |
kort | Et kort heltal | 2 byte |
lang | En dobbelt kort | 4 byte |
lang lang | En dobbelt lang | 8 byte |
BOOL | Boolsk (signeret char) | 1 byte > Opgørelsestyper |
|
Identifikatorer er af konstanter af type int.
typedef
typedef typeName identifikator;
Associerer en identifikator med en bestemt type.
Konstanter
const type identifikator = værdi; #define identifikationsværdi
Giver dig mulighed for at definere navne for konstanter.
Mål-C-operatører
Mål-C-operatører, som i andre programmeringssprog, giver dig mulighed for at udføre operationer på variabler (dermed navnet). Mål-C giver mange operatører, og det er svært at holde styr på, at alle kan være vanskelige, når du programmerer dine iOS- eller Mac OS X-apps. Brug følgende tabeller til at jogge din hukommelse om, hvilken operatør der udfører hvilken opgave.
Aritmetiske operatørerHvad det betyder | + |
---|---|
Tilføjelse | - |
Subtraktion | * |
Multiplikation | / < Division |
% | Modulo |
Relationelle og ligestillingsoperatører | Operator |
== | Lig med |
---|---|
!= | Ikke lig med >> |
Større end | |
Mindre end >> = | Større end eller lig med |
<= | Mindre end eller lige til |
|
Logiske operatører |
Operatør | Hvad det betyder |
&& | Logisk OG |
---|---|
|| | Logisk ELLER |
Sammensatte opgaveoperatører | Operatør |
Hvad det betyder | + = |
Modulo | & = |
---|---|
Bitwise OG | | = |
Multiplikation | / = |
Division | Bitwise Inclusive ELLER |
^ = | Eksklusiv ELLER |
<< = | Skift til venstre >>> = |
Skift højre | |
Operator | Hvad det gør |
++ | Forøgelse |
- | Decrement |
Bitwise Operators | Operatør < Hvad det betyder |
| | Bitwise Inclusive ELLER |
---|---|
^ | Eksklusiv ELLER |
~ | Unary komplement (bit inversion) |
Skift højre | Andre operatører |
---|---|
Operatør | Hvad det gør |
() | Cast |
, | Komma > Sizeof () |
Størrelse på | ?: |
Betinget | & |
Adress | * |
Kontrolerklæringer og loops i Objective-C | I programmering, som i livet, skal du træffe beslutninger og handle dem. Objective-C giver kontrolopgørelser og sløjfer for at hjælpe dit program til at gribe ind. Du kan muligvis gentage et sæt instruktioner baseret på en eller anden tilstand eller tilstand, eller endda ændre programkørsel. Her er den grundlæggende syntaks for Objective-C kontrol udsagn og løkker. |
---|---|
hvis ellers | hvis |
(betingelse) {erklæring (er) hvis betingelsen er sand;} | else |
{erklæring (er), hvis betingelsen ikke er sand;} | for |
til | (tæller; betingelse; opdateringstæller) {erklæring (er), der skal udføres, mens betingelsen er sand;} |
til | til |
(Skriv nyVariabel | i < udtryk) {statement (s);} eller Type existingVariable; for (eksisterendeVariabel i udtryk) {erklæring (er);} |
* Udtryk er et objekt, som er i overensstemmelse med NSFastEnumeration-protokollen.
En NSArray og NSSet opregning er over indhold.
En NSDictionary opregning er over nøgler.
En NSManagedObjectModel-opregning er over enheder. mens mens (betingelse) {sætning (er) skal udføres, mens tilstanden er sand} gør mens
gør {sætning (er) til at udføre, mens tilstanden er sand};
Spring udsagn tilbage;
Stop eksekveringen og vend tilbage til opkaldsfunktionen.
break; Forlad en sløjfe. fortsætte; Spring resten af sløjfen og start den næste iteration.
-
goto labelName; … labelName:
-
Et absolut spring til et andet punkt i programmet (brug ikke det).
-
exit ();
-
Afslutter dit program med en exitkode.
Deklarere klasser og sende meddelelser i Objective-C
Objektorienterede programmeringssprog giver dig mulighed for at erklære klasser, oprette afledte klasser (underklasse) og sende beskeder til objekter, der er oprettet fra en klasse. Dette er kernen i objektorienteret programmering og en del af de objektorienterede udvidelser, som Objective-C tilføjer til C.For at sikre, at alt fungerer gnidningsløst, findes der compiler direktiver, der giver dig mulighed for at informere kompilatoren af dine klasser ved at bruge @class og #import.
Interface
#import "Superclass. H" @interface Klassenavn: Superclass {instance variable declarations;} metodedeklarationer @property (attributes) instance variable declaration; -d
Implementering
#import "ClassName. h" @implementation ClassName @synthesize instansvariabel; metodedefinitioner -d
Meddelelses syntaks
[modtagermeddelelse]
#import
#import "filnavn. h"
Garanterer at en headerfil kun vil blive inkluderet én gang.
@class
@class ClassName;