由于目标C为C超集,所有的Objective-C特定语句一个.m文件的编译时转化成C语句(由预测器,我猜)。因此,例如,将消息表达式[receiver method]
转换为消息功能objc_msgSend(receiver, selector)
上的呼叫。什么是一个Objective-C 2.0类接口和实现转换成GCC或锵
我的问题是:如果我有一个类定义是这样的:
@interface ClassA {
int var1;
float var2;
id var3;
}
-(void) method1;
-(int) method2: (int) num1;
@end
@implementation ClassA
-(void) method1 {
// Implementation of the method
}
-(int) method2: (int) num1 {
// Implementation of the method
}
@end
是什么转换成由编译器(2.0版本的Objective-C的)?它是转化为电话上的功能,如objc_allocateClassPair()
,class_addIvar()
,class_addMethod()
和objc_registerClassPair()
,以分别创建类,添加它的实例变量,增加它的方法和注册类,(所以该类结构在运行系统中实际定义的,而不是从可执行文件加载为结构体)?