成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Objective-C 對象復制 簡單實現

移動開發 iOS
本文介紹的是Objective-C 對象復制 簡單實現,以簡單的代碼實現簡單的功能,那么我們來看內容。

Objective-C 對象復制 簡單實現是本文要介紹的內容,也行對Objective-C 也不算陌生了,我們先來看內容。

Foundation系統對象(NSString,NSArray等)

只有遵守NSCopying 協議的類才可以發送copy消息

只有遵守 NSMutableCopying 協議的類才可以發送mutableCopy消息

copy和mutableCopy區別就是copy返回后的是不能修改的對象, 而mutableCopy返回后是可以修改的對象

這個兩個方法復制的對象都需要手動釋放。

自義定義Class

自義定Class也需要實現NSCopying協義或NSMutableCopying協議后,其對象才能提供copy功能。代碼

  1. //TestProperty.h  
  2. #import <Cocoa/Cocoa.h> 
  3. @interface TestProperty : NSObject <NSCopying>{    
  4. NSString *name;  NSString *password;   
  5.  NSMutableString *interest;    
  6.  NSInteger myInt;}@property (retain,nonatomic)   
  7.  NSString *name,*password;  
  8.  @property (retain,nonatomic) NSMutableString *interest;  
  9.  @property NSInteger myInt;  
  10.  -(void) rename:(NSString *)newname;  
  11.  @end//TestProperty.m  
  12.  #import "TestProperty.h"  
  13.  @implementation TestProperty  
  14.  @synthesize name,password,interest;  
  15.  @synthesize myInt;  
  16.  -(void) rename:(NSString *)newname{    
  17.  // 這里可以直接寫成    
  18.  // self.name = newname;    
  19.  //  if (name != newname) {      
  20.  [name autorelease];      
  21.  name = newname;     
  22.  [name retain];    
  23.  }  
  24.  }  
  25.  -(void) dealloc{    
  26.  self.name = nil;    
  27.  self.password = nil;    
  28.  self.interest = nil;   
  29.   [super dealloc];}- (id)copyWithZone:(NSZone *)zone{    
  30.   TestProperty *newObj = [[[self class] allocWithZone:zone] init];    
  31.   newObj.name = name;    
  32.   newObj.password = password;    
  33.   newObj.myInt = myInt;    
  34.   //深復制  NSMutableString *tmpStr = [interest mutableCopy];    
  35.   newObj.interest = tmpStr;    
  36.   [tmpStr release];      
  37.   //淺復制  //newObj.  
  38.   interestinterest = interest;    
  39.   return newObj;  
  40.   }  
  41.   @end 

小結:Objective-C 對象復制 簡單實現的內容介紹完,希望本文對你有所幫助!

責任編輯:zhaolei 來源: 博客園
相關推薦

2014-06-25 14:02:59

Objective-CKVO

2013-06-20 10:40:32

Objective-C實現截圖

2011-08-11 16:01:03

Objective-C面向對象內存

2011-07-27 16:55:12

Objective-c 閉包

2011-08-17 11:05:22

Objective-C方法

2013-03-27 12:54:00

iOS開發Objective-C

2011-05-11 15:58:34

Objective-C

2011-05-11 11:20:26

Objective-C

2011-08-10 18:07:29

Objective-C反射

2011-06-17 17:27:29

Objective-CCocoa蘋果

2013-08-21 13:26:43

Objective-CNSDate說明

2011-08-03 16:55:05

Objective-C 代理

2011-08-04 09:35:09

Objective-C 編碼規范

2014-04-30 10:16:04

Objective-CiOS語法

2012-03-07 13:43:59

Objective-C

2011-07-29 16:16:30

Objective-c block

2011-07-08 13:49:46

Objective-C UUID

2012-06-15 09:47:48

Objective-CCategory

2011-08-17 10:58:59

Objective-C構造函數

2011-08-04 11:04:14

Objective-C 面向對象 繼承
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲狠狠爱 | 国产探花在线精品一区二区 | 日本理论片好看理论片 | 欧美日韩三级 | 中文字幕第5页 | 国产精品不卡一区 | 成人在线一区二区 | 91伊人网 | 丝袜一区二区三区 | 国产一区欧美 | 国产美女一区 | 天天干天天干 | 国产激情视频在线免费观看 | 日本三级网站在线观看 | 亚洲日本视频 | 涩在线 | 91精品在线播放 | 九九热在线视频观看这里只有精品 | 国产高潮av| 黄毛片| 青青久在线视频 | 97色在线视频 | 男女网站免费观看 | 免费看大片bbbb欧美 | 日本久久福利 | 欧美性受xxxx | 日本精品免费 | 网络毛片 | 欧美在线一二三 | 在线三级网址 | 青青草综合 | 午夜欧美 | 97精品一区二区 | 天堂在线1 | 国内精品成人 | av网站观看 | 久久久久久久久综合 | 精品国产一区二区在线 | 国产一级片免费看 | 日韩中文字幕av | 国产成人99久久亚洲综合精品 |