gpt4 book ai didi

ios - "Arguments to methods are never optional"?

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:07:00 25 4
gpt4 key购买 nike

我正开始在 iTunes 上学习斯坦福大学 iOS 编程类(class)的第二堂课,我对上述陈述的确切含义感到困惑。它在幻灯片和讲座本身中:“方法的参数(如 atTop: 参数)从不可选”。

这是讲师在说参数从不“可选”时所指的示例方法:

- (void)addCard:(Card *)card atTop:(BOOL)atTop;

他接着说,如果你想要“一个不带 addTop 的 addCard: 方法:我们可以单独定义它”:

如,

- (void)addCard:(Card *)card;

我只是对他的意思感到困惑。我一直认为方法参数总是可选的,但我认为我遗漏了一些明显的东西。他的意思是说在这种情况下你不能离开顶部:只是卡在那里,因为它与第一种方法相关联?

有人可以帮忙吗?谢谢。

最佳答案

Objective C 方法签名是独一无二的野兽。在这种情况下

- (void)addCard:(Card *)card atTop:(BOOL)atTop;

实际的函数签名是addCard:atTop:,意思是addCard:不会被识别,因为它没有被定义(除非你在其他地方明确定义了它)。也就是说,您始终可以传递 nil 来代替任何指针参数,但这在这种情况下不起作用,因为 BOOL 是原始的。

关于ios - "Arguments to methods are never optional"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27136993/

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