CGPoint(_,_)需要Linux上的CGFloat输入

时间:2017-03-30 11:33:09

标签: linux swift

我的Swift代码在Mac上的Xcode中运行良好,但是当我部署到为服务器端Swift构建的第三方云托管服务时,我遇到了这个问题。我在使用Cannot convert value of type 'Int' to expected argument type 'CGFloat'时收到错误:CGPoint(x: Int, y: Int)。我宁愿在浮点数上使用整数。

enter image description here

我认为这是Swift专门针对Linux的问题。除了这个问题之外,还有什么可以在Mac上调试Swift,但对于Linux环境?另外,Swift for Linux还有哪些其他不一致之处?我发现不支持arc4random,并且需要为任何与调度相关的代码导入Dispatch。

1 个答案:

答案 0 :(得分:2)

在Linux(和其他非Apple平台)上, CGPointNSGeometry.swift中定义为Int swift-corelibs-foundation项目。

正如我们在源代码中看到的那样,没有初始化程序采用let xVal: Int = ... let yVal: Int = ... let point = CGPoint(x: CGFloat(xVal), y: CGFloat(yVal)) 参数,因此您必须明确转换它们:

$ git clone git@github.com:irish315/Datumbox-Python-Wrapper.git
$ cd Datumbox-Python-Wrapper
$ python
>>> from DatumBox import DatumBox
>>> datum_box = DatumBox(API_KEY)
>>> datum_box.twitter_sentiment_analysis("I love my cat")
u'positive'