NSString *i = @"1";
NSString *j = [i mutableCopy];
NSLog(@"i=%p,j=%p",i,j);
打印地址不一样,由此可见是内容拷贝
继续
i = @"2";
NSLog(@"i=%@,j=%@",i,j);
那么问题来了,为什么j的值还是1?
天蓬老师2017-05-02 09:38:07
콘텐츠 카피는 딥 카피입니다. 새로 생성된 j는 새로운 객체이며 i와는 아무런 관련이 없습니다. 따라서 i를 변경해도 j에는 영향을 미치지 않습니다.
为情所困2017-05-02 09:38:07
주소가 다르다는 것은 두 개의 객체가 있다는 것을 의미합니다. 그렇다면 질문은 왜 두 개의 독립된 객체 사이의 값이 여전히 관련되어 있습니까?