Я пытаюсь использовать функцию vDSP_conv
в Accelerate here. Один из аргументов vDSP_conv
- это const float *__F
, который «должен указывать на последний элемент вектора». Я не очень хорошо знаком с указателями в Swift, поэтому я не понимаю, как создать указатель на последний элемент массива Swift.UnsafePointer для последнего элемента массива в Swift
Может ли кто-нибудь дать представление?
/** EDIT **/
спецификация Функция, которую я пытаюсь позвонить: func vDSP_conv(_ __A: UnsafePointer<Float>, _ __IA: vDSP_Stride, _ __F: UnsafePointer<Float>, _ __IF: vDSP_Stride, _ __C: UnsafeMutablePointer<Float>, _ __IC: vDSP_Stride, _ __N: vDSP_Length, _ __P: vDSP_Length)
До сих пор, у меня есть этот код. Мне нужно y
указать как указатель на последний элемент в массиве как conv
начинается в конце массива и прогрессирует на фронт
public func conv(x: [Float], y: [Float]) -> [Float] {
var result = [Float](x)
let inputLength:Int = x.count
let outputLength:Int = inputLength + y.count - 1
vDSP_conv(x, 1, y, 1, &result, 1, vDSP_Length(inputLength), vDSP_Length(outputLength))
return result
}
Можете ли вы показать, что вы сделали до сих пор? –
@CodeDifferent см. Редактирование в сообщении. –