簡體   English   中英

XSM 5中的NSMutableSet錯誤的NSMutableArray在Xcode 4中可以正常編譯

[英]NSMutableArray with NSMutableSet error in Xcode 5 that compiles fine in Xcode 4

以下幾行在Xcode 4中可以正常編譯:

NSMutableArray *midiViewsToRemove = [NSMutableSet setWithArray:[self.noteViewControllers allKeys]];

NSMutableArray *audioViewsToRemove = [NSMutableSet setWithArray:[self.audioNoteViewControllers allKeys]];

但是Xcode 5給我以下錯誤:

使用類型為“ NSMutableSet *”的表達式初始化“ NSMutableArray *”的指針類型不兼容

救命!

該代碼是錯誤的,並且僅在以前有效,因為諸如setWithArray:類的方法將返回id但現在返回instancetype ,這有助於編譯器進行類型檢查。

您不能將NSMutableSet*分配給NSMutableArray* 這兩個類共享的某些方法以前可能曾經使用過,但這很危險,只是偶然使用。

將變量聲明為NSMutableSet *midiViewsToRemoveNSMutableSet *audioViewsToRemove

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM