gpt4 book ai didi

iphone - 自定义委托(delegate)和数据源的问题

转载 作者:行者123 更新时间:2023-11-29 13:22:47 25 4
gpt4 key购买 nike

我有一个自定义委托(delegate)和数据源。但是当我尝试初始化它时,我遇到了几个问题。在我的 .h 文件中,如果有这样的话。

@property (nonatomic, assign) id<UITableViewDelegate> delegate;
@property (nonatomic, assign) id<KalDataSource> dataSource;

这导致在 .m 文件的综合中出现以下错误。

Existing ivar 'dataSource' for property 'dataSource' with assign attribute must be __unsafe_unretained.

经过一些谷歌搜索魔法后,我发现我应该像这样评估我的变量。

@property (nonatomic, strong) id<UITableViewDelegate> delegate;
@property (nonatomic, strong) id<KalDataSource> dataSource;

但是我得到了这个错误。

linker command failed with exit code 1 (use -v to see invocation)

谁能帮我解决这个问题?

亲切的问候!

最佳答案

您遇到的错误与您的内存限定符无关(它们第一次是正确的)。问题在于您在某个地方声明了一个没有限定符的支持 iVar。当 iVar 被声明时,它们隐含地是强的,所以如果你转到你的阴影 iVar,并在前面加上 __weak__unsafe_unretained,警告应该消失。当然,更好的解决方案是完全删除支持 iVar,因为 Xcode 会为您合成它们。

关于iphone - 自定义委托(delegate)和数据源的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13967820/

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