types - Confusion due to Swift lacking implicit conversion of CGFloat -
trying arithmetic in function returns `cgfloat, error:
couldn't find overload '/' accepts supplied arguments
func kdccontroldegreestoradians(x : cgfloat) -> cgfloat {       return (m_pi * (x) / 180.0) // error here.  } has else seen type of issue?
this problem double float conversion.
on 64-bit machine, cgfloat defined double , compile without problems because m_pi , x both doubles.
on 32-bit machine, cgfloat float m_pi still double. unfortunately, there no implicit casts in swift, have cast explicitly:
return (cgfloat(m_pi) * (x) / 180.0) the type 180.0 literal inferred.
in swift 3
m_pi deprecated, use cgfloat.pi instead:
return (x * .pi / 180.0) 
Comments
Post a Comment