1,若想令自己所寫的對象具有拷貝功能,則需實現(xiàn)NSCopying協(xié)議
-(id)copyWithZone:(NSZone *)zone;
這里的zone你可以不用管,歷史遺留問題,因為以前開發(fā)會據(jù)此把內(nèi)存分成不同的“區(qū)”(zone),而對象會創(chuàng)建在某個區(qū)厘米。現(xiàn)在就不用啦,每個程序只有一個“默認區(qū)”
2,如果自定義對象分為可變版本與不可變版本,那么就要同時實現(xiàn)NSCoping與NSMutableCopying協(xié)議
3,復制對象時需決定采用淺拷貝還是深拷貝,一般情況下應該盡量執(zhí)行淺拷貝
4,如果你所寫的對象需要深拷貝,那么可考慮新增一個專門執(zhí)行深拷貝的方法