当前位置: 首页 > 面试题库 >

Swift语法“ .bar”叫什么?

白文彬
2023-03-14
问题内容

Swift具有以下方便的语法:

enum Foo {
    case bar
    case baz
}


func hoge(foo: Foo) {
}


hoge(foo: .bar) // This

它在enums 以外的地方被镜像:

struct Qux {
    static let `default` = Qux()
}


func hoge(qux: Qux) {
}


hoge(qux: .default) // This

我不确定在对话/票务中该怎么称呼。也许是“类型推断点语法”?我不确定 此语法是否有正式名称? 如果是这样,那是什么?


问题答案:

它称为 隐式成员表达式
。从语言指南的语法部分:

隐式成员表达式是在类型推断可以确定隐式类型的上下文中访问类型成员(例如枚举用例或类型方法)的缩写方式。它具有以下形式:

member name

例如:

var x = MyEnumeration.someValue
x = .anotherValue


 类似资料:
  • 问题内容: 我正在将一个较旧的应用程序移植到Xcode 7 beta,并且我的动画出现错误: 无法使用类型为’(Double,delay:Double,options:nil,animations:()-> _,completion:nil)的参数列表调用’animateWithDuration’ 这是代码: 这在Xcode 6中有效,因此我假设这是Swift中的更新。所以我的问题是: anima

  • 问题内容: 我正在尝试使用Swift的内部后退按钮图像。我之前已经问过这个问题,并且得到了从上一个View继承过来的技术上正确的答案,但是如果我插入此代码,则可以控制当前View的后退按钮。 这给了我<,“ ABC”会给我ABC等,但是如何触发Swift来放置它的内部“后退按钮”图像。下面的代码不起作用,但我认为正确的做法是正确的。 有没有人知道如何做到这一点? 问题答案: 尝试将自定义视图添加为

  • 观察:对于每个节点,我们可以重复使用它到目的地的最小路径,这样我们就不必重新计算它(dp)。此外,当我们发现一个循环时,我们检查它是否为负。如果不是,它不会影响我们的最终答案,我们可以说它没有连接到目的地(阉羊是否)。 伪代码: > 给定源节点u和目标节点v 初始化 Integer dp 数组,该数组存储相对于源节点的最小到达点节点的最小距离。dp[v]= 0,其他一切都是无限的 初始化boole

  • 主要内容:1. Swift 4导入,2. Swift 4令牌,3. 注释,4.分号,5.标识,6. 关键字,6.空白格,7.文字值,Swift打印在设置环境时已经看过一段Swift 4程序。使用以下“Hello,World!” 为OS X playground 创建的程序,包括,如下所示 - 如果为iOS playground 创建程序,那么它将包含,程序将如下所示 - 当使用playground运行上述程序时,将得到以下结果 - 现在看一下Swift 4程序的基本结构,这样您就可以轻松理解Sw

  • 在上一章节中我们已经讲到如何创建 Swift 语言的 "Hello, World!" 程序。现在我们来复习下。 如果创建的是 OS X playground 需要引入 Cocoa : import Cocoa /* 我的第一个 Swift 程序 */ var myString = "Hello, World!" print(myString) 如果我们想创建 iOS playground

  • 问题内容: 我总是想知道为什么这么称呼这个对象? 您的请求正文不必为XML格式。同样,可以将从服务器接收的数据提取为JSON,XML,HTML或纯文本。XML在此对象中没有扮演重要角色。这是陈词滥调吗?首次创建时该对象是什么? 问题答案: 由Microsoft的Outlook Web Access团队发明。这个高度创新的团队以前为我们提供了远程脚本编写,这是“ AJAX”样式开发的开始。远程脚本编