gpt4 book ai didi

Objective-C:这个委托(delegate)在哪里声明,以及其他查询

转载 作者:行者123 更新时间:2023-12-01 18:32:10 26 4
gpt4 key购买 nike

我想找出一个委托(delegate)在特定 WWDC Live Demo Video 中专门指定为属性的位置。已声明(注意:您需要 Apple Developer 登录才能访问视频)。

下面列出了相关代码,出于 NDA 原因省略了 iOS 5 属性限定符。我相信这个限定词与我的查询无关。

#import <UIKit/UIKit.h>
@class NSManagedObject;
@protocol CoffeeViewControllerDelegate;

@interface CoffeeViewController : UITableViewController
@property (_____,nonatomic) id <CoffeeViewControllerDelegate> delegate;
@end

@protocol CoffeeViewControllerDelegate <NSObject>
// ...
@end

我的问题是:
  • 委托(delegate)在哪里声明为类成员?
  • 是否继承了NSObject CoffeeViewControllerDelegate 的协议(protocol)协议(protocol)意味着 运行时间 检查委托(delegate)是否拥有所有 NSObject方法会怎样?
  • 为什么要转发声明NSManagedObject ?这是使用 Core Data 时的常见要求吗?

  • 非常感谢您的时间。

    最佳答案

  • 我认为这是 LLVM(Apple 的新 GCC 替代 Objective-C 编译器)功能,这意味着变量是在您创建 @synthesize 时创建的。属性(property)(我对此不是 100% 确定)
  • 不会。它会在编译时检查
  • 你也可以#import <CoreData/CoreData.h>但是只需执行前向声明,您的代码就会更快地编译。基本上,除了它的大小(它是一个对象,所以它是一个指针)
  • 之外,它不需要知道任何关于实现的信息。

    关于Objective-C:这个委托(delegate)在哪里声明,以及其他查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7729032/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com