2014-09-11 1 views
0

Я уверен, что это что-то глупое Я делаю неправильно, но почему быстрый парсер говорит мне, что я не могу преобразовать тип выражения(), когда ясно, определение AudioQueueDispose возвращает тип OSStatus? Я откладываю задание на этот вопрос некоторое время, потому что я знаю, что это будет что-то немое. Меня просто упускают из виду.Невозможно определить использование AudioQueueDispose в Swift

Я положил это в Xcode, чтобы площадка для простоты ...

import UIKit 
import AudioToolbox 
import AVFoundation 

var audioQueue:AudioQueue 
var status : OSStatus = OSStatus(noErr) 
status = AudioQueueDispose(audioQueue, inImmediate: false) 

ответ

0

Я думаю, что сообщение об ошибке было вводить в заблуждение, особенно с маленькой стрелкой, чтобы подписать «=» имплицирующие это была проблема с возвращаемый тип. В любом случае, фактическая проблема связана с использованием «false», который является быстрым типом «Bool», тогда как функция ожидает в типе «Boolean», который на самом деле является UInt8. Таким образом, вышеуказанное может быть исправлено путем написания ...

status = AudioQueueDispose(audioQueue, 0) 

Возможно, кто-то может предложить лучшее решение, которое не включает использование целых чисел?

Сейчас я просто определение пару констант ..

let FALSE:Boolean = 0 
let TRUE:Boolean = 1 

 Смежные вопросы

  • Нет связанных вопросов^_^