美文网首页
11 结构体

11 结构体

作者: LeeLeCoder | 来源:发表于2018-05-13 09:56 被阅读0次

1. 结构体的介绍

  • 概念介绍
    • 结构体(struct)是由一系列具有相同类型或不同类型的数据构成的数据集合
    • 结构体(struct)指的是一种数据结构
    • 结构体是值类型,在方法中传递时是值传递
  • 结构的定义格式
struct 结构体名称 {
    // 属性和方法
}

2. 为什么需要结构体?

  • 先来看一个例子
    • 我们要计算平面坐标里某个点距点Center的距离是否小于200
    • 算起来很简单,勾股定理就搞定了:


      • 其中sqrt(n)用来计算n的平方根
      • pow(x, n)用来计算x的n次方
let centerX : Double = 100
let centerY : Double = 100

func inRange(x : Double, y : Double) -> Bool {
    let disX = x - centerX
    let disY = y - centerX

    let dis = sqrt(pow(disX, 2) + pow(disY, 2))

    return dis < 200
}

let x : Double = 100
let y : Double = 1000

inRange(x, y: y)
  • 问题
    • 但是这样有一个不足,当我们需要比较很多个点和Center的距离的时候,这些数字并不能明确告诉我们它们代表的位置的意义,甚至我们都无法知道它们代表一个数字。
    • 如果我们可以像这样来比较位置:
      • 相比数字,它们看上去就会直观的多
      • 而这,就是我们需要自定义struct类型最直接的原因
inRange(location1)
inRange(myHome)
  • 使用结构进行改进
// 初始化结构体
struct Location {
    var x : Double
    var y : Double
}

// 创建结构体
let location = Location(x: 90, y: 90)

// 优化刚才的方法
func inRange(location : Location) -> Bool {
    let disX = location.x - centerX
    let disY = location.y - centerY

    let dis = sqrt(pow(disX, 2) + pow(disY, 2))

    return dis < 200
}

inRange(location)

相关文章

  • 不输出111

    结构体还与结构体顺序有关m1 := struct {name stringage int}{"dan", 11}m...

  • 11 结构体

    1. 结构体的介绍 概念介绍结构体(struct)是由一系列具有相同类型或不同类型的数据构成的数据集合结构体(st...

  • 11.结构体

    Go语言中没有“类”的概念,也不支持“类”的继承等面向对象的概念。Go语言中通过结构体的内嵌再配合接口比面向对象具...

  • NDK开发—结构体、共用体与C++基础(三)

    目录 结构体、共用体与C++基础11、结构体字节对齐2、共用体3、C++ 输出函数符号兼容引用字符串C字符串字符串...

  • swift4.0-11 类和结构体

    代码学习swift4.0, 类和结构体 //// main.swift// SwiftLearn11-类和结构...

  • 第05天(异常、文本文件处理)_03

    11_通过结构体生成json.go 12_通过map生成json.go 13_json解析到结构体.go 14_j...

  • 结构体

    [toc] 结构体的定义方式 先定义结构体类型,再定义结构体变量 定义结构体类型的同时定义结构体变量 定义结构体类...

  • 【C语言笔记】<十九>结构体

    结构体的基本概念 结构体初始化 结构体的内存存储细节 结构体定义的方式 结构体类型的作用域 指向结构体的指针 结构...

  • C结构体和链表

    一,结构体变量定义及初始化 二,无名结构体 备注:无名结构体很少使用 三,宏定义结构体 四,结构体嵌套 五,结构体...

  • 结构体

    结构体定义* 结构体中的格式:* struch 结构体名* {* 结构体成员变量* }* 结构体中的特点* 1.结...

网友评论

      本文标题:11 结构体

      本文链接:https://www.haomeiwen.com/subject/uyvqjxtx.html