苹果的Swift语言原生支持复数吗?
我在文档中找不到任何有关C++std::complex
等价物的提及,也无法在尝试时找到任何一个。
苹果的Swift语言原生支持复数吗?
我在文档中找不到任何有关C++std::complex
等价物的提及,也无法在尝试时找到任何一个。
我写了以下内容:
https://github.com/dankogai/swift-complex
只需将complex.swift添加到您的项目中,您就可以像这样进行操作:
let z = 1-1.i
它具有C++11涵盖的所有函数和运算符。
与C++11不同,complex.swift不是泛型--z.real和z.imag始终为Double。
但是,复数整数的必要性非常模糊,我认为应该将其视为不同的类型(也许是GaussianInteger)。
import Complex
let z: Complex<Double> = 2 + 3 * .i
print(z.real) // 2.0
print(z.imaginary) // 3.0
let w = Complex<Double>(1, -2) // (1.0, -2.0)
let u: Complex<Double> = .i * .i // (-1.0, 0.0)