2017-01-26 8 views
0

Есть ли способ конвертировать NSMutableSet в NSSet? Я пробовал несколько методов: переход к NSArray и setWithArray; создание экземпляра NSSet с содержимым NSMutableSet. Программа компилируется, но я получаю ошибку времени выполнения.Преобразование NSMutableSet в NSSet

NSMutableArray *temp = [[NSMutableArray alloc] init]; 
NSMutableSet *num1 = [[NSMutableSet alloc] init]; 
NSArray   *num2 = [[NSArray alloc] init]; 
NSSet   *num3 = [[NSSet alloc] init]; 

num1 = [checkset mutableCopy]; //checkset is of type NSSet 
num2 = [NSArray arrayWithArray:NoShows]; 
num3 = [NSSet setWithArray:num2]; 

[num1 minusSet:num3]; 

ответ

1

copy из NSMutableSet возвращает NSSet

В вашем примере:

NSSet *immutableSet = [checksetM copy]; // returns immutable copy 
0
-(NSSet *)ContainsNoShow:(NSMutableArray *)checkset 
{ 

    NSSet *newcheckset = [[NSSet alloc] init]; 
    newcheckset = [NSSet setWithArray:NoShows]; 

    NSMutableSet *checksetM  = [NSMutableSet setWithArray:checkset]; 

    [checksetM minusSet: newcheckset]; 

    return checksetM; 

}

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