Effective Objective-C - Familiarize Yourself with Objective-C's Roots

  1. 把Objective-C 和 C++ 两门面向对象编程语言进行对比。它们语法出现差异的原因,是触发对象行为的方式不同,Objective-C 是向对象传递消息的结构模式(Objective-C 演变自 Smalltalk, Smalltalk 使用了传递消息的机制),而 C++ 是函数调用。代码举例:

        // Messaging (OBJC)
         Object *obj = [Object new];
         [obj performWith:parameter1 and:parameter2];
         
         // Function calling (C++)
         Object *obj = new Object;
         obj -> perform(parameter1, parameter2);
    
  2. Objective-C 的动态绑定特性,在 运行时(runtime)进行对象方法的匹配,而不是在编译的时候。

  3. 在 运行时 阶段,一组代码会和你的代码进行合并起来,并且把你的代码和动态库相连接。

  4. Objective-C 中对象在内存中的存储方式。

         NSString *someString = @"The string";
         NSString *anotherString = someString;
    
内存分配
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容