2014-04-02 2 views
0

핵심 데이터에서 생성 된 NSSet 메서드에 대한 추가 개체를 사용자 지정하지 않아도됩니다. 어디서 NSSet self.comments에 주어진 매개 변수를 추가 할 수 있는지 알 수 없습니다.NSSet 메서드에 사용자 지정 추가 개체를 만드는 방법은 무엇입니까?

- (void)addCommentsObject:(Comment *)value 
{ 
    if (value.liked) 
    { 
     // do something 
    } 
    else 
    { 
     // do something else 
    } 

    // how should I add the object to self.comments 

} 

답변

3

당신은 self.commentsNSMutableSet을해야하고 당신이 그것을에 addObject:을 사용할 수 있습니다;

또는

일시적 세트

- (void)addCommentsObject:(Comment *)value 
{ 
    if (value) 
    { 
     NSMutableSet * mSet = [[NSMutableSet alloc]initWithSet:self.comments]; 
     [mSet addObject:value]; 
     self.comments = mSet.set; 
    } 
} 
+0

덕분에 남자는, 내가 완전히'initWithSet' 잊어 코드에서, 여기에 객체를 추가하고 self.comments로 저장 만들기! – gpichler

+0

필자는 항상 새로운 세트를 생성하는 것이 아니라 mSet이 이미 변경 가능하고 필요에 따라 생성 및 복사 만하는지 확인하는 것이 좋습니다. –

+0

@ Davidid, 동의합니다. 그러나 실제 프로젝트에서는 개체를 추가하기 위해 복사본을 만드는 대신이 속성을 변경할 수있게하는 것을 선호합니다. – sage444

관련 문제