Swift 面试题
目录

Swift 中如何定义结构体?

· 约 3 分钟读完 · 第 62 / 196 章

推荐答案

在 Swift 中,结构体(Struct)是一种值类型,用于封装一组相关的属性和方法。定义结构体的语法如下:

示例

本题详细解读

结构体的定义

在 Swift 中,结构体通过 struct 关键字定义。结构体可以包含属性(变量或常量)和方法。结构体是值类型,意味着当结构体实例被赋值给变量或常量,或者传递给函数时,实际上是复制了一份新的实例。

属性

结构体中的属性可以是变量(var)或常量(let)。变量属性可以在实例创建后修改,而常量属性一旦初始化后就不能再修改。

方法

结构体可以定义方法,方法是与结构体实例关联的函数。方法可以访问和修改结构体的属性。

初始化方法

结构体可以定义初始化方法(init),用于在创建结构体实例时初始化属性。如果没有定义初始化方法,Swift 会自动生成一个成员初始化方法(memberwise initializer)。

值类型

结构体是值类型,这意味着当结构体实例被赋值给另一个变量或常量时,实际上是复制了一份新的实例。这与引用类型(如类)不同,引用类型的实例在赋值时是共享的。

示例解析

在示例中,我们定义了一个 Person 结构体,包含 name 和 age 两个属性,以及一个 introduce 方法。通过 init 方法,我们可以在创建 Person 实例时初始化属性。最后,我们创建了一个 Person 实例并调用了 introduce 方法。

总结

结构体是 Swift 中非常常用的数据类型,适用于封装简单的数据结构和行为。由于其值类型的特性,结构体在需要复制数据时非常有用。