• swift 与 NSObject


    以NSObject为基类,只是为了提供Objective-C API的使用入口;

    经由@object修改的对象,是这些api的参量。

    NSObject是swift与oc特有机制沟通的桥梁。

    Subclassing NSObject in Swift gets you Objective-C runtime flexibility but also Objective-C performance. Avoiding NSObject can improve performance if you don't need Objective-C's flexibility.

    https://stackoverflow.com/questions/24057525/swift-native-base-class-or-nsobject

    Before Swift 4

    For example, if one subclassed from NSObject, the compiler created Objective-C entry points for all methods in such classes. The mechanism is called @objc inference.

    https://stackoverflow.com/questions/44379348/the-use-of-swift-3-objc-inference-in-swift-4-mode-is-deprecated

    Swift classes that are subclasses of NSObject:

    • are Objective-C classes themselves
    • use objc_msgSend() for calls to (most of) their methods
    • provide Objective-C runtime metadata for (most of) their method implementations

    https://stackoverflow.com/questions/24057525/swift-native-base-class-or-nsobject

    Some Objective-C APIs—like target-action—accept method or property names as parameters, then use those names to dynamically call or access the methods or properties.

    https://developer.apple.com/documentation/swift/using_objective-c_runtime_features_in_swift

  • 相关阅读:
    HDU1698(线段树入门题)
    POJ2528(离散化+线段树区间更新)
    POJ3630(Trie树)
    HDU1251(字典树)
    HDU1247(经典字典树)
    POJ2513(字典树+图的连通性判断)
    POJ1363
    UVa11624(逃离火焰问题)
    HDOJ1495(倒水BFS)
    poj3414Pots(倒水BFS)
  • 原文地址:https://www.cnblogs.com/feng9exe/p/9675871.html
Copyright © 2020-2023  润新知