Objective-C: Różnice pomiędzy wersjami
[wersja przejrzana] | [wersja przejrzana] |
Usunięta treść Dodana treść
m robot dodaje: ka:Objective-C |
+informacje o iPhone OS |
||
Linia 1:
'''Objective-C''' to rozszerzenie języka [[C (język programowania)|C]] o możliwości obiektowe, wzorowane na [[Smalltalk]]u. '''Objective-C''' przyjął drogę całkowicie odmienną od [[C++]].
Elementy składniowe, o jakie rozszerzono w tym celu język C, używają dwóch symboli: [] oraz [[@]] (rozszerzeń składni jest oczywiście więcej, ale tylko te wchodzą w jakiekolwiek interakcje ze składnią języka C). Nawiasy kwadratowe są używane do wywoływania metod, natomiast @ do definicji specyficznych dla języka '''Objective-C'''. Istnieją też specjalnie dla '''Objective-C''' wprowadzone typy, istniejące już według reguł języka C, z których najważniejszym jest '''id'''. Typ ten jest uniwersalną "referencją do obiektu" (dokładnie to wskaźnikiem, z punktu widzenia języka C). Podobnie jak to jest w Smalltalku, klasa może utworzyć obiekt po wywołaniu na obiekcie klasy metody new:
Linia 35:
Dodatkowo, POC i GCC potrafią implementować nakładkę Objective-C również na język C++, realizując koncepcję '''Objective-C++''' (pliki kompilowane mają wtedy rozszerzenie .mm zamiast .m). Kompilator POC, odmiennie niż GNU Objective-C, pracuje podobnie jak Cfront dla C++: na podstawie plików .m (.mm) generuje kod w języku C, który następnie podlega kompilacji jako język C (lub C++).
Język Objective-C
|