输入的CLLocationDegrees值会产生错误值。为什么?

时间:2014-11-21 20:55:36

标签: swift numbers cllocation

我正在尝试设置MKCircle坐标,但在创建'坐标'时遇到问题。

我已尝试设置特定的CLLocationDegrees属性,但输入的数字未正确解释。
例如,输入的'-37'产生2.1974599073494367E-314。

为什么会这样;以及如何解决? enter image description here

(lldb) p lat
(CLLocationDegrees) $R0 = 2.1974599073494367E-314
(lldb) p long
(CLLocationDegrees) $R1 = 2.2149668507855847E-314

<小时/> 这似乎有效:

let gLocationCoordinate:CLLocationCoordinate2D = CLLocationCoordinate2DMake(-37.813611, 144.963056)

(lldb) p gLocationCoordinate
(CLLocationCoordinate2D) $R2 = (latitude = -37.813611000000002, longitude = 144.96305599999999)


2 个答案:

答案 0 :(得分:0)

看起来像调试器有问题。正如Martin所说,它适用于println()

let lat : CLLocationDegrees = -37
let long : CLLocationDegrees = 144

println("Lat: \(lat) Long: \(long)")
// Output: "Lat: -37.0 Long: 144.0"

我会向lldb提出雷达。

答案 1 :(得分:0)

我将代码从viewDidLoad()移动到viewDidAppear()并且它有效。

但我需要这样做吗?

enter image description here