gpt4 book ai didi

swift - 在 Swift 编译时强制执行有效的整数值

转载 作者:可可西里 更新时间:2023-11-01 01:37:25 25 4
gpt4 key购买 nike

在 Swift 应用程序中,我有一个函数只接受 +2 和正无穷大之间的整数。有什么办法可以在编译时强制执行此操作吗?

更新了一个小代码示例:

要计算斐波那契数列,我们至少需要两个数字作为开始,任何其他数字都是错误的。在这里,我使用 guard 和一个可失败的初始化器来在运行时验证这一点。

struct FibonacciSeed {

var magnitude = 2

init() { }

init?( magnitude: Int ) {

guard magnitude > 1 else { return nil }

self.magnitude = magnitude

}

var seed: [Int] {

// return valid seed ...

}

}

我很好奇是否有一些奇特的方法来获得编译器的帮助以在编译时强制执行此操作。就像编译器不让我编译:

var a:UInt = -8

最佳答案

Swift 中没有这样的功能。编译器无法在编译时知道应用程序在运行时将什么样的值传递给函数。作为一个运行时特性,它只会让 Swift 运行时库变得更大。即使他们不使用特定功能,这也会使应用程序变得更大。我很确定 Apple 希望让库尽可能小。

关于swift - 在 Swift 编译时强制执行有效的整数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35253174/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com