关于objective-c的两个问题:点和方括号表达式中的框架链接和"self"



我现在正在学习iphone开发。现在我在读《iPhone 4开发》这本书。在阅读这本书的过程中,我对本书中使用的objective-c的一些语法感到困惑。好的,这是我的问题:

  • 链接框架与头文件

在本书第7章的末尾,书中提到了"链接项目到框架"。在本书中,它将项目链接到audiotoolkit .framework。我想知道为什么不只是添加头文件,而不是链接框架?链接到框架和添加头文件之间的区别是什么?

  • "self" in。&"[]"表达

在本书的第9章中,示例代码多次使用点运算符和方括号表达式,例如:SecondLevelViewController *controller = [controllers objectAtIndex:row];SecondLevelViewController *nextController = [self.controllers objectAtIndex:row];,我认为这两个句子的功能是一样的。那么什么时候应该使用"self"呢?当不?

谢谢,山姆

链接框架,就像在Visual Studio for Windows中一样,告诉编译器在哪里找到库。

然后添加相关的include/import调用,以便编译器从源代码中导入的库中找到您的类,向上执行import/include,执行并命中库,然后返回(或多或少,确切的行为无关紧要)。

关于self的问题是一个明显的重复,检查SO"objective-c self"…

当您编写self.outlet = nil时,将调用[self setOutlet:nil];方法。当你写outlet = nil;时,你直接访问了变量outlet。

如果您使用@synthesize outlet;,则自动生成setOutlet:方法,如果您拒绝使用@property (retain) NSObject outlet;属性,则在分配新对象之前释放对象。

从这里移动

最新更新