gpt4 book ai didi

Swift 警告 - 从 'Builtin.Int32' 转换为 'Builtin.Int8' 时整数溢出

转载 作者:搜寻专家 更新时间:2023-10-31 22:16:51 25 4
gpt4 key购买 nike

我收到以下警告,没有提及它发生的行:

warning: integer overflows when converted from 'Builtin.Int32' to 'Builtin.Int8'

此代码中出现警告:

extension NSPoint {

func ToString() -> String {
return "(" + self.x.description + "," + self.y.description + ")"
}

func Plus(toBeAdded : NSPoint) -> NSPoint {
return NSPoint(x: self.x + toBeAdded.x, y: self.y + toBeAdded.y)
}

func Minus(toBeMinused : NSPoint) -> NSPoint {
return NSPoint(x: self.x - toBeMinused.x, y: self.y - toBeMinused.y)
}

static func fromScalar(scalar : Int) -> NSPoint {
return NSPoint(x: scalar, y: scalar)
}
}

NSPoint 初始化器采用 Int,所以我不立即知道为什么会这样 - 有什么想法吗?

最佳答案

这看起来像一个错误,是由 description 方法引起的在您的 ToString() 方法中。

已经出现相同的警告
let x = CGFloat(12.0)
let s = x.description

作为解决方法,您可以改用字符串插值:

func ToString() -> String {
return "(\(self.x),\(self.y))"
}

或者只是

func ToString() -> String {
return "\(self)"
}

这给出了相同的结果。

关于Swift 警告 - 从 'Builtin.Int32' 转换为 'Builtin.Int8' 时整数溢出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25867546/

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