Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 找不到';初始';它接受提供的参数_Swift - Fatal编程技术网

Swift 找不到';初始';它接受提供的参数

Swift 找不到';初始';它接受提供的参数,swift,Swift,这两行代码给了我 找不到接受提供的参数的“init”的重载 错误: var w = Int(self.bounds.size.width / Float(worldSize.width)) var h = Int(self.bounds.size.height / Float(worldSize.height)) 错误消息具有误导性。这应该起作用: var w = Int(self.bounds.size.width / CGFloat(worldSize.width)) var h = In

这两行代码给了我

找不到接受提供的参数的“init”的重载

错误:

var w = Int(self.bounds.size.width / Float(worldSize.width))
var h = Int(self.bounds.size.height / Float(worldSize.height))

错误消息具有误导性。这应该起作用:

var w = Int(self.bounds.size.width / CGFloat(worldSize.width))
var h = Int(self.bounds.size.height / CGFloat(worldSize.height))
CGSize
width
height
元素声明为
CGFloat
。 在64位平台上,
CGFloat
Double
相同,具有64位, 而
Float
只有32位

所以问题是除法运算符, 它需要两个相同类型的操作数。与(Objective-)C不同,Swift从不隐式地将值转换为 不同类型

如果
worldSize
也是
CGSize
,则您根本不需要演员阵容:

var w = Int(self.bounds.size.width / worldSize.width)
var h = Int(self.bounds.size.height / worldSize.height)

错误消息具有误导性。这应该起作用:

var w = Int(self.bounds.size.width / CGFloat(worldSize.width))
var h = Int(self.bounds.size.height / CGFloat(worldSize.height))
CGSize
width
height
元素声明为
CGFloat
。 在64位平台上,
CGFloat
Double
相同,具有64位, 而
Float
只有32位

所以问题是除法运算符, 它需要两个相同类型的操作数。与(Objective-)C不同,Swift从不隐式地将值转换为 不同类型

如果
worldSize
也是
CGSize
,则您根本不需要演员阵容:

var w = Int(self.bounds.size.width / worldSize.width)
var h = Int(self.bounds.size.height / worldSize.height)

什么是
init
?什么是云?您能更具体一点吗?worldSize.width是什么类型?请尝试在单独的一行中创建代码中使用的浮点值,然后我们就可以知道是哪个操作导致了错误。什么是
init
?什么是云?你能说得更具体一点吗?worldSize.width是什么类型的?试着在单独的一行中创建你在代码中使用的浮点,然后我们就可以知道是哪个操作导致了错误。