2017-05-10 16 views
1

vDSP를 사용하여 신속한 계산을 수행 할 때 출력 매개 변수 중 하나를 신경 쓰지 않는 경우가 종종 있습니다. 의 내가 배열의 최대 값의 인덱스를 찾는거야 가정 해 봅시다 :vDSP의 출력 매개 변수 무시

var m:Float = 0 
var i:vDSP_Length = 0 
vDSP_maxvi(&array, 
      1, 
      &m, 
      &i, 
      vDSP_Length(array.count)) 

적으로는, 내가이 vDSP_maxvii을 채우도록 모두 m을 제거하고 싶습니다. 같은 뭔가 :

var i:vDSP_Length = 0 
vDSP_maxvi(&array, 
      1, 
      nil, 
      &i, 
      vDSP_Length(array.count)) 

그러나 물론이 작동하지 않습니다

( "전무 예상 인수 유형 'UnsafeMutablePointer < 플로트 >'와 호환되지 않습니다"). "이 매개 변수 무시"라는 이런 종류의 메서드에 보낼 수있는 일종의 인수가 있습니까? 읽어 주셔서 감사합니다.

+0

로컬 var을 만들고 그 값을 무시하면 무엇이 해가됩니까? 코드 정리를 위해서라면 인수를 생략 한 래퍼 함수를 ​​만들 수 있습니다. – Connor

+0

별도로 명시하지 않는 한 모든 vDSP 함수는 포인터 인수에 대해 NULL이 아닌 값을 예상합니다. –

+0

@ConnorNeville 콘텐츠를 전혀 사용하지 않아도 채워야하는 엄청난 빈 배열을 만들어야하는 경우 속도 최적화가 필요합니다. – Rogare

답변

0

null 인수가 허용되는 문서화 된 경우를 제외하고 유효한 주소를 전달해야합니다. 인수를 무시하도록 vDSP에 알리는 인수 값은 없습니다.