美文网首页
swift 重命名+-*/=,让它们更强大,为你所用

swift 重命名+-*/=,让它们更强大,为你所用

作者: 管乐_VICTOR | 来源:发表于2017-11-16 14:38 被阅读68次

直接创建一个新的类:MyUtils.swift
将其代码改成如下:

import UIKit
import Foundation
import CoreGraphics

func + (left: CGPoint, right: CGPoint) -> CGPoint {
    return CGPoint(x: left.x + right.x, y: left.y + right.y)
}

func += ( left: inout CGPoint, right: CGPoint) {
    left = left + right
}

func - (left: CGPoint, right:CGPoint) -> CGPoint {
    return CGPoint(x: left.x - right.x, y: left.y - right.y)
}

func -= (left: inout CGPoint, right: CGPoint) {
    left = left - right
}

func * (left: CGPoint, right: CGPoint) -> CGPoint {
    return CGPoint(x: left.x * right.x, y: left.y * right.y)
}

func *= (left: inout CGPoint, right: CGPoint) {
    left = left * right
}

func * (point: CGPoint, scalar: CGFloat) -> CGPoint {
    return CGPoint(x: point.x * scalar, y: point.y * scalar)
}

func *= (point: inout CGPoint, scalar: CGFloat) {
    point = point * scalar
}


func / (left: CGPoint, right: CGPoint) -> CGPoint {
    return CGPoint(x: left.x / right.x, y: left.y / right.y)
}

func /= (left:inout CGPoint, right: CGPoint) {
    left = left / right
}

func / (point: CGPoint, scalar: CGFloat) -> CGPoint {
    return CGPoint(x: point.x / scalar, y: point.y / scalar)
}

func /= (point:inout CGPoint, scalar: CGFloat) {
    point = point / scalar
}

let test1 = CGPoint(x: 100, y: 100)
let test2 = CGPoint(x: 50, y: 50)
let test5: CGFloat = 10.1
let test3 = test1 + test2
let test6 = test1 / test5

func addPlusMethod() {
    print("doubi \(test3) and \(test6)")
}
// 在另一个类中调用 addPlusMethod()方法,打印出结果如下

打印结果如下:

// 这里我们只是测试了一下加方法和除方法,其他的小伙伴们可以自己试一下
doubi (150.0, 150.0) and (9.9009900990099, 9.9009900990099)

当然,还有atan和sqrt方法,小伙伴们也可以自己试一下,(๑•̀ㅂ•́)و✧加油

// 2017年11月16日 更新O(∩_∩)O~
现在又添加了两个,看一下是不是挺好玩

#if !(arch(x86_64) || arch(arm64))
    func atan2(y: CGFloat, x: CGFloat) -> CGFloat {
        return CGFloat(atan2f(Float(y),Float(x)))
    }

    func sqrt(a: CGFloat) -> CGFloat {
        return CGFloat(sqrtf(Float(a)))
    }
#endif

相关文章

  • swift 重命名+-*/=,让它们更强大,为你所用

    直接创建一个新的类:MyUtils.swift将其代码改成如下: 打印结果如下: 当然,还有atan和sqrt方法...

  • 让情绪为你所用

    今天过端午节,大人孩子都在放假休闲嗨翻天。我带孩子去影棚拍照,等待过程中和一名可爱的销售顾问聊了很多,不禁感慨情绪...

  • 如何让时间为你所用?

    时间是这世界上不可多得的公平对于每个人的东西。 每个人的一天都是24小时,每个小时都是60分钟,每分钟都是60秒,...

  • 让时间精确为你所用

    万事开头难,在做事之前踏出第一步,是最消耗力气的,待习惯之后,自然就能持续下去,而且不需要花太多力气。 开始起来以...

  • 成功的小说都符合这个链条公式

    文学创作的绝大多数技巧都是可以学到的。你可以练习这些技巧,让它们为你所用。那些不能传授的内容是你赋予文学的内涵,比...

  • Swift 3 (1)介绍

    Swift 3 强大的编程语言也很容易学习。 Swift是一个强大和直观的编程语言为macOS,iOS,watch...

  • “管理领导”,让老板“为你所用”

    一个阳光明媚的星期六,我们几个朋友准备好装备和食物,计划去郊外度过一个愉快的周末。 出发前,石头突然接到领导的电话...

  • 让玉镯为女人所用

    玉镯是中国传统女性们特有的寓意平安吉祥的护身符,翡翠手镯的佩戴使女性显得典雅、庄重、温柔、大方,是女性朋友永恒不变...

  • 让时间为我们所用

    一开始我认为每天记录时间的流向是件特别麻烦的事儿,觉得这是在浪费时间。但是最近在践行的过程中,我路转粉,爱上了这种...

  • 文件批量重命名神器:Bulk Rename Utility

    内容摘要: 你还在手动给文件重命名吗?本文介绍了一款免费而强大的批量重命名神器:Bulk Rename Utili...

网友评论

      本文标题:swift 重命名+-*/=,让它们更强大,为你所用

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