Swift Struct 结构体

Posted qianchia

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Swift Struct 结构体相关的知识,希望对你有一定的参考价值。

前言

  • 结构体是值类型,并且只有在赋予变量或常量,或者被函数调用时才被赋值。

1、结构体的创建

  • 结构体基本结构

    struct 结构体名 {
    
        var 或 let 字段名 = 初始化值
        var 或 let 字段名: 类型
    }
    struct Student {
    
        var age = 0
    }
    
    var stu = Student()
    
    /// struct      结构体关键字
    /// Student     结构体名称
    
    /// student()   创建一个结构体变量

1.1 标准定义

  • 结构体的定义

    • 定义结构体字段时可以直接定义一个字段名,并且给字段名赋初始值。或者只定义一个字段名,不赋初始值,但是不赋初始值的字段在创建结构体变量时必须赋初始值。

      struct Student {                              
      
          var name: String                           // 只定义一个字段名,不赋初始值
          var age = 0                                // 定义一个字段名,并且给字段名赋初始值
      }
  • 结构体的使用

    • 创建结构体变量时,结构体的字段都必须都有初始值,否则会报错。

      let s = Student(name: "appple", age: 8)        // 创建结构体变量时初始化结构体的字段
      
      print("\(s.name), \(s.age)")                   // 结构体类型变量值的调用

1.2 基本定义

  • 结构体的定义

    • 每个字段名都赋初始值。

      struct BookInfo {                               
      
          var ID: Int = 0                            // 每个字段名都赋初始值
          var Name: String = "Default"
          var Author: String = "Default"
          var RootType: String = "Default"
      }
  • 结构体的使用

    • 创建结构体变量时,结构体的字段都必须都有初始值,否则会报错。

      let book = BookInfo()                          // 创建结构体变量时不再需要初始化结构体的字段
      
      print("\(book.ID), \(book.Name), \(book.Author), \(book.RootType)")     // 结构体类型变量值的调用

以上是关于Swift Struct 结构体的主要内容,如果未能解决你的问题,请参考以下文章

Swift结构体(Struct)

Swift-Class和Struct的区别(结构体和类的区别)

Swift 的 结构体

Swift中 Class和Struct的区别

swift简单学习之Struct

Swift Struct 的引用计数