两个相关量的比率,表示为每个分母单位的分子单位量。
此功能在Flight School Guide to Swift Numbers的第 5 章中讨论。
将 Rate 包添加到 Package.swift
中你的目标依赖项
import PackageDescription
let package = Package(
name: "YourProject",
dependencies: [
.package(
url: "https://github.com/Flight-School/Rate",
from: "1.0.0"
),
]
)
然后运行 swift build
命令来构建你的项目。
要使用 Carthage 在你的 Xcode 项目中使用 Rate,请在 Cartfile
中指定它
github "Flight-School/Rate" ~> 1.0.0
然后运行 carthage update
命令来构建框架,并将构建的 Rate.framework 拖到你的 Xcode 项目中。
Foundation Unit 和 Measurement API 的缺点之一是无法动态声明复合单位。 这使得执行量纲分析和其他多步计算变得困难。
Rate
结构允许你以类型安全的方式表达两个单位之间的比率。 将具有一种单位类型的测量值乘以一个分母是相同单位类型的速率,会导致这些类型相互抵消,从而产生一个具有分子类型的测量值。
例如,体积除以时间乘以时间会产生体积
let flowRate = Rate<UnitVolume, UnitDuration>(value: 84760,
unit: .cubicFeet,
per: .seconds)
let oneDay = Measurement<UnitDuration>(value: 24, unit: .hours)
(flowRate * oneDay).converted(to: .megaliters) // 207371ML
MIT
Mattt (@mattt)