zoukankan      html  css  js  c++  java
  • Effective Objective-C 2.0学习(一)

    OC是C语言的超集,使用了面向对象的特性。OC使用消息结构(messaging structure)而非方法调用(function calling),区别在于,消息结构在运行时决定执行的代码,而方法调用,由编译器决定。
    OC使用引用计数机制,熟悉C的内存模型有助于了解OC的内存管理。
    OC的对象都是声明在堆(heap)中,写法: NSString *somgString = @"The string"; 在栈(stack)中声明是不合法的, NSString someString;
    区别:堆一般由程序员分配,而栈由编译器分配
    OC的内存管理已经抽象出来,叫做引用计数(reference counting),不需要程序员去malloc和free。
    有些OC的变量(非对象)是使用栈空间的,比如:CGRect,相当于C的结构体。因为频繁地创建释放OC的对象,会影响性能。

    在类的头文件中尽量少引入其他头文件,这样做可以尽可能的减少编译时间,并减少相互依赖。此时,使用向前声明(forward declaration)。
    有些情况,比如声明遵循某个协议,首先考虑把这些协议声明移到class-continuation分类中,其次或放置到一个单独的只包含协议的头文件中。

  • 相关阅读:
    我該怎麼辦
    這麼多年興許從來沒有釋放過
    我想做一個快樂的孩子
    纠结
    如何克服心煩氣躁
    如何樹立威嚴
    第零次作业
    第三周作业
    第二周作业,
    第二周作业
  • 原文地址:https://www.cnblogs.com/horo/p/8915518.html
Copyright © 2011-2022 走看看