gpt4 book ai didi

Swift - '()' 是什么类型?

转载 作者:搜寻专家 更新时间:2023-11-01 06:31:56 24 4
gpt4 key购买 nike

我测试了一些代码来理解完成处理程序,我发现有 ()->()() 等类型。

我知道()->()的意思是“没有参数也没有返回值”;但是 () 是什么类型?

如果我这样定义一个函数:

func sayHello(){
print("hello")
}

然后检查类型:

type(of: sayHello) // ()->()
type(of: sayHello()) // ()

函数执行”(())是一种类型吗?

最佳答案

您真正要问的是为什么 type(of: sayHello()) 会导致 ()

首先考虑一下 sayHello() 的作用。它实际上调用了函数。所以 type(of:) 告诉您该调用结果的类型。因为sayHello的返回类型是Void,所以类型是()。它基本上是在第一次调用 type(of:) 时看到的 () -> () 的第二个 ()

如果您将 sayHello 更改为返回类型 Int 而不是 Void,那么第二个 type(of:) 返回 Int 而不是 ()。第一个 type(of:) 将从 () -> () 更改为 () -> Int

tl;dr - () 表示 Void。调用sayHello()的返回类型。

关于Swift - '()' 是什么类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46066636/

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