zoukankan      html  css  js  c++  java
  • non-fragile:oc2.0特性--继承结构的父类内存布局变化时子类是否需要重新编译的问题

    Runtime Versions and Platforms

    There are different versions of the Objective-C runtime on different platforms.

    Legacy and Modern Versions

    There are two versions of the Objective-C runtime—“modern” and “legacy”. The modern version was introduced with Objective-C 2.0 and includes a number of new features. The programming interface for the legacy version of the runtime is described in Objective-C 1 Runtime Reference; the programming interface for the modern version of the runtime is described in Objective-C Runtime Reference.

    The most notable new feature is that instance variables in the modern runtime are “non-fragile”: 

    • In the legacy runtime, if you change the layout of instance variables in a class, you must recompile classes that inherit from it.

    • In the modern runtime, if you change the layout of instance variables in a class, you do not have to recompile classes that inherit from it.

    In addition, the modern runtime supports instance variable synthesis for declared properties (see Declared Properties in The Objective-C Programming Language).

    https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/ObjCRuntimeGuide/Articles/ocrtVersionsPlatforms.html#//apple_ref/doc/uid/TP40008048-CH106-SW1

  • 相关阅读:
    LuoGu P1006 传纸条
    LuoGu P1083 借教室
    动态规划-区间dp-Palindrome Removal
    咕果
    直径问题 Diameter Problems
    Contest 161
    ALBert
    Focal Loss
    Contest 159
    Contest 160
  • 原文地址:https://www.cnblogs.com/feng9exe/p/10276306.html
Copyright © 2011-2022 走看看