Inhoudsopgave:
- typedef typeName identifier;
- const-type-ID = waarde; #define identifier value
- * Expression is een object dat overeenkomt met het NSFastEumination-protocol.
- while (voorwaarde) {statement (s) om uit te voeren terwijl de voorwaarde waar is}
- Jump-instructies
- exit ();
- Klassen decoderen en berichten verzenden in Objectief-C
Video: Full Notion Tour | Kylie Stewart (2019 Edition) 2024
door Neal Goldstein
je schrijft een Objective-C-programma voor je iOS- of Mac OS X-apps in Objective-C, het enige wat je doet is een reeks instructies geven die de computer moet volgen. Fundamenteel, programma's manipuleren cijfers en tekst en alles bij elkaar genomen, een computerprogramma heeft slechts twee delen: variabelen (en andere structuren), die de gegevens "vasthouden", en instructies, die bewerkingen op die gegevens uitvoeren.
Een Objective-C-verklaring maken
Het programmeren van iOS- en Mac OS X-apps in Objective-C gaat over het afleggen van een verklaring. U kunt een instructie direct in Objective-C herkennen door aan het einde de puntkomma te noteren:
-instructie;
U ziet andere coderegels, maar tenzij de regel eindigt met een puntkomma, is dit geen Objective-C-statement.
Objective-C Ingebouwde gegevenstypen en nieuwe gegevenstypen
De variabelen die u declareert in Objectief-C - Objectief-C gegevenstypen - moeten van het type zijn dat de compiler kan herkennen. Objective-C wordt geleverd met een aantal ingebouwde gegevenstypen, evenals mechanismen om nieuwe te maken, voor het programmeren van uw iOS- of Mac OS X-applicaties.
Type | Beschrijving | Grootte |
---|---|---|
tekens | tekens | 1 bytes |
int | een geheel getal - een geheel getal | 4 bytes |
zweven | Enkele precisie zwevendekommagetal | 4 bytes |
dubbel | Dubbele precisie zwevendekommagetal | 8 bytes |
kort | Een kort geheel getal | 2 bytes |
lang | A dubbel kort | 4 bytes |
lang lang | A dubbel lang | 8 bytes |
BOOL | Boolean (signed char) | 1 byte > Opsommingstypen |
|
Identifiers zijn van constanten van het type int.
typedef
typedef typeName identifier;
Associeert een ID met een specifiek type.
Constanten
const-type-ID = waarde; #define identifier value
Hiermee kunt u namen voor constanten definiëren.
Objective-C-operators
Objective-C-operators, zoals die in andere programmeertalen, laten u bewerkingen op variabelen uitvoeren (vandaar de naam). Objective-C biedt vele operatoren, en het bijhouden van al deze kan moeilijk zijn terwijl je je iOS- of Mac OS X-apps programmeert. Gebruik de volgende tabellen om uw geheugen op te starten om te bepalen welke operator welke taak uitvoert.
Wat het doet | + |
---|---|
Optellen | - |
Aftrekken | * |
Vermenigvuldigen | / < Afdeling |
% | Modulo |
Relationele en gelijkwaardige operators | Operator |
== | Gelijk aan |
---|---|
!= | Niet gelijk aan >> |
Groter dan | << Minder dan >> = |
Groter dan of gelijk aan | <= |
Kleiner dan of gelijk naar |
|
Logische operators | Operator |
Wat het doet | ! |
Logisch EN | || |
---|---|
Logisch OF | Toewijzing van samengestelde toewijzingen |
Operator | Wat het doet |
+ = | Optelling > - = |
* = | Vermenigvuldigen |
---|---|
/ = | Verdeling |
% = | Modulo |
& = | Bitgewijs EN |
| = < Bitwise inclusief OR | ^ = |
exclusief OF | << = |
Shift links >>> = | Shift naar rechts |
|
Increment and Decrement Operators |
Operator | What It Does |
++ | Increment |
- | Decrement |
en | Bitgewijs EN |
---|---|
| | Bitwise inclusief OR |
^ | Exclusief OR |
Unary-complement (bitinversie) | < << Shift Left >>> |
---|---|
Shift Right | Other Operators |
Operator | What It Does |
() | Cast |
, | Comma > Sizeof () |
Grootte van | ?: |
Voorwaardelijk | & |
* | Indirectie |
---|---|
Controleverklaringen en lussen in doelstelling-C | Tijdens het programmeren moet u, net als in het leven, beslissingen nemen en ernaar handelen hen. Objective-C biedt controleverklaringen en loops om uw programma te helpen actie te ondernemen. U kunt bijvoorbeeld een reeks instructies herhalen op basis van een bepaalde conditie of status, of zelfs de volgorde van de programma-uitvoering wijzigen. Hier is de basissyntaxis voor besturingsinstructies en lussen van Objective-C. |
if else | if |
(voorwaarde) {statement (s) als de voorwaarde waar is;} | else |
{statement (s) als de voorwaarde niet waar is;} | voor |
voor | (teller; voorwaarde; update-teller) {statement (s) om uit te voeren terwijl de voorwaarde waar is;} |
voor in | voor |
(Typ newVariable
in < uitdrukking) {statement (s);} of Type existing Variable; for (existingVariable in expression) {statement (s);}
* Expression is een object dat overeenkomt met het NSFastEumination-protocol.
Een NSArray- en NSSet-opsomming is te veel inhoud. Een NSDictionary-opsomming is meer dan voldoende. Een NSManagedObjectModel-opsomming is boven entiteiten. while
while (voorwaarde) {statement (s) om uit te voeren terwijl de voorwaarde waar is}
doen terwijl de {statement (s) uitvoeren om uit te voeren terwijl de voorwaarde waar is} while (voorwaarde);
Jump-instructies
retour; Stop de uitvoering en ga terug naar de oproepfunctie. breken; Laat een lus.
-
voort te zetten;
-
Sla de rest van de lus over en start de volgende iteratie.
-
ga naar labelName; … labelName:
-
Een absolute sprong naar een ander punt in het programma (gebruik het niet).
exit ();
Beëindigt uw programma met een afsluitcode.
Klassen decoderen en berichten verzenden in Objectief-C
Objectgeoriënteerde programmeertalen stellen u in staat klassen te declareren, afgeleide klassen (subklasse) te maken en berichten te verzenden naar de objecten die vanuit een klas zijn geïnstantieerd. Dit is de essentie van objectgeoriënteerd programmeren en een deel van de objectgeoriënteerde extensies die Objective-C toevoegt aan C.Om ervoor te zorgen dat alles soepel verloopt, zijn er compilerrichtlijnen beschikbaar waarmee je de compiler van je klassen kunt informeren door @class en #import te gebruiken.
Interface
#import "Superclass. H" @interface ClassName: Superclass {instance variable declarations;} methodedeclaraties @property (attributen) exemplaarvariabele-declaratie; -d
Implementatie
#import "ClassName. h" @implementation ClassName @synthesize instantievariabele; methodedefinities -d
Syntaxis van bericht
[ontvangerbericht]
#import
#import "bestandsnaam. h"
Garandeert dat een headerbestand slechts één keer wordt opgenomen.
@class
@class ClassName;
Geeft de compiler aanwijzingen in door de gebruiker gedefinieerde typen.