Итак, в Swift2.x
приведенный ниже код работает без проблем:
определять:
public class BarChartData
public convenience init(xVals: [String?]?)
{
self.init(xVals: xVals, dataSets: [IChartDataSet]())
}
public convenience init(xVals: [NSObject]?)
{
self.init(xVals: xVals, dataSets: [IChartDataSet]())
}
в этом:
let xs = Array(1..<10).map { return Double($0) }
let data = BarChartData(xVals: xs)
Однако в Swift3
, Xcode8
GM выдает мне ошибку:
Не удается вызвать инициализатор для типа «BarChartData» со списком аргументов типа «(xVals: [Double])»
Если я перейду на
let data = BarChartData(xVals: xs.map { i in return i as NSObject })
Тогда это сработает.
Похоже, что в Swift3
моста между [Double]
и [NSObject]
больше нет. Есть ли какая-либо документация об этом изменении или это ошибка?
xs as [NSObject]
- person Hamish   schedule 08.09.2016as
. - person Martin R   schedule 08.09.2016[Double]
и[NSObject]
исчез: удалено только неявное соединение. - person dfrib   schedule 08.09.2016