Video: Objective-C Programming Tutorial | Editing Code - The Basics 2024
En del av Mac Application Development for Dummies Cheat Sheet
Objective-C ger objektorienterade funktioner för Macintosh applikationsutveckling, såsom arv och polymorfism. Språket är baserat på C-programmeringsspråket; Därför kan du använda din C programmeringskunskap för att koda inom Objective-C. Objective-C ++ är en bromekanism som tillåter objektiv-C-källmodulerna att fungera med Objective-C ++-klasser, som kan sammanställa och länka till C ++-kodbibliotek.
Följande enkla exempel på en kvadratisk matris visar innehållet i en C ++-headerfil för en Matrix-klass. Matrix-klassen levereras med standardkonstruktorn och destruktorn för en C ++-klass, och metoderna är vad du kan förvänta dig för ett grundläggande kvadratmatrisobjekt:
klassmatris {public: Matrix (int inSize); virtuell ~ Matrix (); int getSize (void); int getDeterminant (void); void setElement (int inRow, int inCol, int inValue); int getElement (int inRow, int inCol); Matrix operator + (const Matrix & inAddend); privat: int m_size; int [] [] m_elements;};
För att använda Objective-C ++ måste dina Objective-C ++-klassmoduler använda filtillägget. mm. Detta berättar för Xcodes kompilator att klassen ska sammanställas med Objective-C ++, vilket gör att din klass kan använda C ++ -språkiga sökord. Med hjälp av Objective-C ++ kan din app skapa ett Matrix-objekt för att utföra grundläggande operationer, till exempel att lägga till två Matrix-objekt tillsammans. Detta förutsätter att Objective-C ++-källmodulen har importerat C ++-matrisen. h-fil:
- (void) addTwoMatrices {Matrix matrixOne (3); // 3x3 matris MatrismatrisTwo (3); // annan int radIndex = 0; int colIndex = 0; för (rowIndex = 0; rowIndex <3; ++ rowIndex) {for (colIndex = 0; colIndex <3; ++ colIndex) {// sätt matrisen ena elementen till deras värden matrixOne. setElement (rowIndex, colIndex, XXX); // sätt matris två delar till några andra värden matrixTwo. setElement (rowIndex, colIndex, YYY);}} Matrix matrixSum = matrixOne + matrixTwo;
Med Objective-C ++ kan dina appar dra nytta av alla tillgängliga bibliotek från tredje part som är skrivna för C ++.