2016-07-07 39 views
-2

1.I我將目標C的反向音頻功能進入迅捷,這樣我可以迅速代碼集成到我的計劃,但代碼的這幾行不理解我不能這樣的ObjectiveC代碼轉換成快捷

2,本是下面的Objective-C代碼:

CMSampleBufferRef sample; 

    NSMutableArray *samples = [[NSMutableArray alloc] init]; 

    while (sample != NULL) { 
    sample = [readerOutput copyNextSampleBuffer]; 

    if (sample == NULL) 
     continue; 

    [samples addObject:(__bridge id)(sample)]; 

    CFRelease(sample); 
    } 

回答

2

你已經證明可以轉換爲斯威夫特代碼:

var samples: [CMSampleBuffer] = [] 
while let sample = readerOutput.copyNextSampleBuffer() { 
    samples.append(sample) 
} 
+0

太感謝你了,我只是讀取CFRelease不需要編輯了不知道爲什麼? –

+0

也許你聽說過ARC。 Swift ARC可以處理CF對象以及NSObject。您無需擔心CFRelease或需要什麼橋接屬性或類似的東西。在大多數情況下,只需刪除所有CFRelease即可。 – OOPer

+0

@你好,非常感謝你 –