2016-06-23 4 views
1

나는 기능은 다음 한 사용할 수 없습니다 사용할 수있는 것으로 표시됩니다. 나는 무엇을 놓치나요?NSLog는

답변

4

C와 마찬가지로 가변 인수 목록을 직접 다른 함수에 전달할 수 없습니다. 당신은 CVaListPointer (va_list의 스위프트 상당)를 생성하고 NSLogv 변형에 그것을 통과해야 : (. 스위프트 3 코드)

func myNSLog(_ givenFormat: String, _ args: CVarArg..., _ function:String = #function) { 
    let format = "\(function): \(givenFormat)" 
    withVaList(args) { NSLogv(format, $0) } 
}