Objective-C Typedef
Objective-C programlama dili, typedef, bir türe yeni bir ad vermek için kullanabilirsiniz. Aşağıda bir terim tanımlamak için bir örnek verilmiştirBYTE bir baytlık sayılar için -
typedef unsigned char BYTE;
Bu tür tanımlamasından sonra, BYTE tanımlayıcı, tür için bir kısaltma olarak kullanılabilir. unsigned char, for example:.
BYTE b1, b2;
Geleneksel olarak, kullanıcıya tür adının gerçekten sembolik bir kısaltma olduğunu hatırlatmak için bu tanımlarda büyük harfler kullanılır, ancak aşağıdaki gibi küçük harf kullanabilirsiniz -
typedef unsigned char byte;
Kullanabilirsiniz typedefkullanıcı tanımlı veri türüne bir isim vermek için. Örneğin, yeni bir veri türü tanımlamak için typedef'i yapıyla kullanabilir ve ardından bu veri türünü yapı değişkenlerini doğrudan aşağıdaki gibi tanımlamak için kullanabilirsiniz -
#import <Foundation/Foundation.h>
typedef struct Books {
NSString *title;
NSString *author;
NSString *subject;
int book_id;
} Book;
int main() {
Book book;
book.title = @"Objective-C Programming";
book.author = @"TutorialsPoint";
book.subject = @"Programming tutorial";
book.book_id = 100;
NSLog( @"Book title : %@\n", book.title);
NSLog( @"Book author : %@\n", book.author);
NSLog( @"Book subject : %@\n", book.subject);
NSLog( @"Book Id : %d\n", book.book_id);
return 0;
}
Yukarıdaki kod derlendiğinde ve yürütüldüğünde, aşağıdaki sonucu verir -
2013-09-12 12:21:53.745 demo[31183] Book title : Objective-C Programming
2013-09-12 12:21:53.745 demo[31183] Book author : TutorialsPoint
2013-09-12 12:21:53.745 demo[31183] Book subject : Programming tutorial
2013-09-12 12:21:53.745 demo[31183] Book Id : 100
typedef - #define
#define bir Objective-C direktifidir ve aynı zamanda benzer çeşitli veri türleri için takma adları tanımlamak için kullanılır. typedef ancak aşağıdaki farklılıklarla -
typedef yalnızca türlere sembolik adlar vermekle sınırlıdır, oysa #define 1'i BİR olarak tanımlayabileceğiniz gibi değerler için takma ad tanımlamak için de kullanılabilir.
typedef yorumlama derleyici tarafından yapılır; #define ifadeler ön işlemci tarafından işlenir.
Aşağıda #define'ın en basit kullanımı verilmiştir -
#import <Foundation/Foundation.h>
#define TRUE 1
#define FALSE 0
int main( ) {
NSLog( @"Value of TRUE : %d\n", TRUE);
NSLog( @"Value of FALSE : %d\n", FALSE);
return 0;
}
Yukarıdaki kod derlendiğinde ve yürütüldüğünde, aşağıdaki sonucu verir -
2013-09-12 12:23:37.993 demo[5160] Value of TRUE : 1
2013-09-12 12:23:37.994 demo[5160] Value of FALSE : 0