Block旗鷹翠議聞喘
宸匯准僥楼仟議囂隈?block旗鷹翠。万頁壓iOS4.0才Mac OS X10.6參朔議井云嶄嘉耶紗議?頁斤C囂冱議制婢。
酒汽議尖盾block旗鷹翠議恬喘祥才C囂冱議痕方議恬喘窃貌?祥頁繍嬬校糞孖蝶嶽蒙協孔嬬議匯乂旗鷹淫骨軟栖?藻竃駅勣議俊笥?祥頁歌方??工翌順距喘。
岑祇block旗鷹翠議孔嬬朔?僥楼匯和block議囂隈号夸。
辛參心欺?貧円議箭徨宥狛聞喘block旗鷹翠糞孖阻“Hello World”弌殻會。蛍盾匯和block旗鷹翠?心心欺久頁奕担糞孖議。
及4佩旗鷹?頁block議蕗苧?及匯倖void頁旗鷹翠議卦指峙窃侏?(^helloWorld)?“^”頁block旗鷹翠議炎崗?涙糞縞吭吶。helloWorld頁block旗鷹翠議兆各?駅倬勣喘弌凄催制軟栖。及屈倖void頁旗鷹翠議歌方?泌惚俶勣嗤歌方?囂隈頁??int?……?賜?int i?……?脅辛參?泌惚音俶勣歌方?辛參寡喘???賜?void?徽頁音嬬銭凄催脅音亟。
6-8佩旗鷹?頁block旗鷹翠議糞孖。遍枠壓斤旗鷹翠糞孖議扮昨?“^”頁駅倬贋壓議??void?嶄俶勣亟議頁輝旗鷹翠議歌方。嗤歌方扮?壓宸戦駅倬亟貧醤悶議耽倖歌方兆?泌惚短嗤歌方?辛參亟撹: ?void?賜??賜孤巌福待脅辛參。朔円寄凄催嶄議旗鷹燕幣斤helloWorld旗鷹翠議醤悶糞孖旗鷹。
?戻幣?旗鷹翠議蕗苧才糞孖辛參亟壓匯軟?
旗鷹翠議距喘才C囂冱議痕方距喘屢揖。宥狛?“旗鷹翠兆?歌方?”議圭塀。
壓聞喘旗鷹翠議扮昨?斤噐畠蕉延楚?壓翠坪頁頼畠辛荷恬議。
徽頁斤噐蕉何延楚栖傍?壓翠坪峪嬬聞喘音嬬厚個。
泌惚編夕壓翠坪厚個蕉何延楚議峙?殻會氏烏危?盾畳議圭宛頁壓蕗苧蕉何延楚扮耶紗__block購囚忖?廣吭頁曾倖“_”??
幹秀匯倖垢殻?壓main.m猟周嶄?
The number is :10
The i is :11
The number is :11
(斤噐Block旗鷹翠議聞喘?万匆辛參才C囂冱嶄議痕方匯劔?亟壓main痕方議翌中?徽頁駅倬恆儉“枠蕗苧?朔聞喘”議圻夸)
旗鷹翠議醤悶聞喘
宥狛貧中議僥楼?哘乎児云貧辛參聞喘旗鷹翠阻。壓糞縞蝕窟狛殻嶄?旗鷹翠議聞喘脅竃孖壓椎乂仇圭椿?
1、厘断壓聞喘Foundation崇尺嶄議蝶乂圭隈扮?辛嬬氏心欺旗鷹翠?宸乂旗鷹翠恬葎圭隈議歌方。箭泌?斤NSArray窃議方怏序佩電會辛參聞喘旗鷹翠電會?
5,
4,
3,
2,
1
)
宥狛貧円斤方怏斤嵆序佩電會議箭徨?低氏窟孖block旗鷹翠恬葎歌方聞喘扮?輝聞喘宸倖電會圭隈扮?旗鷹翠嶄議延楚賜斤嵆頁嗤峙議。
宥狛繍卦指議方峙序佩曳熟?隼朔壅卦指公宸倖圭隈匯倖潤惚?祥頼撹阻斤方怏議電會。屁倖狛殻喘欺阻block旗鷹翠議指距。
和中宥狛匯倖箭徨斤宸倖狛殻序佩匯和庁亭?
1、遍枠幹秀匯倖垢殻?箭泌?Demo?
2、幹秀匯倖Person窃?
壓Person.h嶄:
壓Person.h嶄?遍枠蕗苧阻匯倖畠蕉議block旗鷹翠?旺繍岻恬葎圭隈議歌方。
壓Person.m猟周嶄?
和中栖心匯和main.m猟周嶄議旗鷹?
遍枠?兜兵晒匯倖person斤嵆
?person斤嵆窟僕exercise?嶧連
塰佩person.m猟周嶄議exercise糞孖何蛍議旗鷹
塰佩欺block旗鷹翠扮?塰佩旗鷹翠議糞孖何蛍?匆祥頁main.m猟周嶄議補竃囂鞘
block旗鷹翠議糞孖何蛍塰佩頼朔?殻會写偬塰佩exercise圭隈議糞孖何蛍。
exercise圭隈議糞孖何蛍塰佩頼朔?燕苧?person斤嵆窟僕議嶧連祥頼撹阻
隼朔塰佩return 0潤崩殻會。
宥狛効忸殻會議峇佩乏會?厘断辛參心欺block旗鷹翠恬葎歌方扮議殻會塰佩送殻。屎頁旋喘block旗鷹翠議宸嶽塰佩字崙?厘断辛參旋喘block頼撹勧峙議孔嬬。
block旗鷹翠?糞縞蝕窟狛殻嶄?斤噐徭協吶議旗鷹翠載富喘欺?徽頁壓Foundation崇尺嶄?block旗鷹翠恬葎圭隈歌方議秤趨曳熟謹。
遇拝?埋隼亅咏、宥岑吉脅嗤勧峙議孔嬬?徽頁泌惚低嬬校痩試塰喘block旗鷹翠?曳軟念曾嶽圭塀園殻繍延誼厚酒汽。
酒汽議尖盾block旗鷹翠議恬喘祥才C囂冱議痕方議恬喘窃貌?祥頁繍嬬校糞孖蝶嶽蒙協孔嬬議匯乂旗鷹淫骨軟栖?藻竃駅勣議俊笥?祥頁歌方??工翌順距喘。
岑祇block旗鷹翠議孔嬬朔?僥楼匯和block議囂隈号夸。
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
void (^helloWorld)(void);
helloWorld=^(void){
NSLog(@"Hello World!");
};
helloWorld();
return 0;
}
塰佩潤惚?Hello World!辛參心欺?貧円議箭徨宥狛聞喘block旗鷹翠糞孖阻“Hello World”弌殻會。蛍盾匯和block旗鷹翠?心心欺久頁奕担糞孖議。
及4佩旗鷹?頁block議蕗苧?及匯倖void頁旗鷹翠議卦指峙窃侏?(^helloWorld)?“^”頁block旗鷹翠議炎崗?涙糞縞吭吶。helloWorld頁block旗鷹翠議兆各?駅倬勣喘弌凄催制軟栖。及屈倖void頁旗鷹翠議歌方?泌惚俶勣嗤歌方?囂隈頁??int?……?賜?int i?……?脅辛參?泌惚音俶勣歌方?辛參寡喘???賜?void?徽頁音嬬銭凄催脅音亟。
6-8佩旗鷹?頁block旗鷹翠議糞孖。遍枠壓斤旗鷹翠糞孖議扮昨?“^”頁駅倬贋壓議??void?嶄俶勣亟議頁輝旗鷹翠議歌方。嗤歌方扮?壓宸戦駅倬亟貧醤悶議耽倖歌方兆?泌惚短嗤歌方?辛參亟撹: ?void?賜??賜孤巌福待脅辛參。朔円寄凄催嶄議旗鷹燕幣斤helloWorld旗鷹翠議醤悶糞孖旗鷹。
?戻幣?旗鷹翠議蕗苧才糞孖辛參亟壓匯軟?
旗鷹翠議距喘才C囂冱議痕方距喘屢揖。宥狛?“旗鷹翠兆?歌方?”議圭塀。
壓聞喘旗鷹翠議扮昨?斤噐畠蕉延楚?壓翠坪頁頼畠辛荷恬議。
徽頁斤噐蕉何延楚栖傍?壓翠坪峪嬬聞喘音嬬厚個。
泌惚編夕壓翠坪厚個蕉何延楚議峙?殻會氏烏危?盾畳議圭宛頁壓蕗苧蕉何延楚扮耶紗__block購囚忖?廣吭頁曾倖“_”??
幹秀匯倖垢殻?壓main.m猟周嶄?
#import <Foundation/Foundation.h>
int number=10;
int main(int argc, const char * argv[]) {
__block int i=10;
void(^block)()=^{
NSLog(@"The i is :%d",i);
NSLog(@"The number is :%d",number);
i++;
number++;
};
block();
NSLog(@"The i is :%d",i);
NSLog(@"The number is :%d",number);
return 0;
}
塰佩潤惚?The i is :10The number is :10
The i is :11
The number is :11
(斤噐Block旗鷹翠議聞喘?万匆辛參才C囂冱嶄議痕方匯劔?亟壓main痕方議翌中?徽頁駅倬恆儉“枠蕗苧?朔聞喘”議圻夸)
旗鷹翠議醤悶聞喘
宥狛貧中議僥楼?哘乎児云貧辛參聞喘旗鷹翠阻。壓糞縞蝕窟狛殻嶄?旗鷹翠議聞喘脅竃孖壓椎乂仇圭椿?
1、厘断壓聞喘Foundation崇尺嶄議蝶乂圭隈扮?辛嬬氏心欺旗鷹翠?宸乂旗鷹翠恬葎圭隈議歌方。箭泌?斤NSArray窃議方怏序佩電會辛參聞喘旗鷹翠電會?
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
NSArray * array=[NSArray arrayWithObjects:@"4",@"1",@"2",@"3",@"5", nil];
array= [array sortedArrayUsingComparator:^NSComparisonResult(id obj1, id obj2) {
int a1=[obj1 intValue];
int a2=[obj2 intValue];
return a1>=a2?-1:1;
}];
NSLog(@"%@",array);
return 0;
}
塰佩潤惚?(5,
4,
3,
2,
1
)
宥狛貧円斤方怏斤嵆序佩電會議箭徨?低氏窟孖block旗鷹翠恬葎歌方聞喘扮?輝聞喘宸倖電會圭隈扮?旗鷹翠嶄議延楚賜斤嵆頁嗤峙議。
宥狛繍卦指議方峙序佩曳熟?隼朔壅卦指公宸倖圭隈匯倖潤惚?祥頼撹阻斤方怏議電會。屁倖狛殻喘欺阻block旗鷹翠議指距。
和中宥狛匯倖箭徨斤宸倖狛殻序佩匯和庁亭?
1、遍枠幹秀匯倖垢殻?箭泌?Demo?
2、幹秀匯倖Person窃?
壓Person.h嶄:
#import <Foundation/Foundation.h> typedef void(^myBlock)(NSString * name,int age); @interface Person : NSObject -(void)exercise:(myBlock)block; @end凪嶄?typedef扮OC嶄議購囚忖?燕幣嶷凋兆?恬喘頁宥狛聞喘typedef購囚忖?酒晒熟葎鹸墫議窃侏蕗苧?壓朔円聞喘旗鷹翠議扮昨?岷俊喘旗鷹翠議兆忖旗燕祥辛參阻。
壓Person.h嶄?遍枠蕗苧阻匯倖畠蕉議block旗鷹翠?旺繍岻恬葎圭隈議歌方。
壓Person.m猟周嶄?
#import "Person.h"
@implementation Person
-(void)exercise:(myBlock)block{
NSString * theName=@"ZhangSan";
int age=10;
block(theName,age);
}
@end
壓宸倖猟周嶄?斤.h蕗苧議圭隈序佩阻糞孖?壓糞孖狛殻嶄?厘断距喘阻block旗鷹翠。岷欺孖壓厘断珊短嗤斤block旗鷹翠恂糞孖。和中栖心匯和main.m猟周嶄議旗鷹?
#import <Foundation/Foundation.h>
#import "Person.h"
int main(int argc, const char * argv[]) {
Person * person=[[Person alloc] init];
[person exercise:^(NSString *name, int age) {
NSLog(@"%@,%d",name,age);
}];
return 0;
}
壓main.m猟周嶄?厘断心欺?厘断斤block旗鷹翠恂阻糞孖?補竃name峙才age議峙。宥狛公垢殻嬉僅泣?厘断氏心欺宸粁弌殻會議塰佩狛殻?遍枠?兜兵晒匯倖person斤嵆
?person斤嵆窟僕exercise?嶧連
塰佩person.m猟周嶄議exercise糞孖何蛍議旗鷹
塰佩欺block旗鷹翠扮?塰佩旗鷹翠議糞孖何蛍?匆祥頁main.m猟周嶄議補竃囂鞘
block旗鷹翠議糞孖何蛍塰佩頼朔?殻會写偬塰佩exercise圭隈議糞孖何蛍。
exercise圭隈議糞孖何蛍塰佩頼朔?燕苧?person斤嵆窟僕議嶧連祥頼撹阻
隼朔塰佩return 0潤崩殻會。
宥狛効忸殻會議峇佩乏會?厘断辛參心欺block旗鷹翠恬葎歌方扮議殻會塰佩送殻。屎頁旋喘block旗鷹翠議宸嶽塰佩字崙?厘断辛參旋喘block頼撹勧峙議孔嬬。
block旗鷹翠?糞縞蝕窟狛殻嶄?斤噐徭協吶議旗鷹翠載富喘欺?徽頁壓Foundation崇尺嶄?block旗鷹翠恬葎圭隈歌方議秤趨曳熟謹。
遇拝?埋隼亅咏、宥岑吉脅嗤勧峙議孔嬬?徽頁泌惚低嬬校痩試塰喘block旗鷹翠?曳軟念曾嶽圭塀園殻繍延誼厚酒汽。