0

阅读与可空性相关的属性以装饰您的 Objective-C 代码以供 Swift 客户端使用。这绝对是一个很棒的特性,让你的 API 在 Swift 中更加干净。

但是,我想知道的是它们是否也可以用于在纯粹的 Objective-C 世界中强制正确使用(即 Swift 根本不是图片的一部分。)

换句话说,如果您将库中公开的函数中的属性标记为nonnull但随后从 Objective-C 使用它并传递nil给它,编译器会警告您吗?

我问是因为根据苹果的这篇文章谈到这些注释,在“兼容性”部分,它特别说注释不会影响 ABI。下一行确实讨论了使用该框架的现有代码在处理它时如何获得新的警告,但我不知道它们是指 Swift 代码还是 Objective-C 代码,他们确实特别提到了 Swift 编译器。

再说一遍,这些属性会影响纯 ObjC 到 ObjC 的调用吗?

在此处输入图像描述

4

0 回答 0