IOS编程之座谈Objective-C :空段selector仓酷云
iPhoneSDK安装,然后最基本的是你要熟悉C语言,再来你得学习开发iPhone所使用的Objective-C语言,接著是Cocoa。如果你是Mac平台开发的入门用户前奏Objective-C很有本性,一个较为光显的特性就是办法函数是分段式的,即函数名不写在一同,而是将其拆成N段,分离对应N个参数,年夜年夜增添了代码的可读性。
[*]#defineWQ_FUNC_LOGNSLog(@"%s",__FUNCTION__)
[*]
[*]
[*]-(void)firstSegment:(id)firstObjsecSegment:(id)secObjthirdSegment:(id)thirdObj
[*]{
[*]WQ_FUNC_LOG;
[*]}
为了便利申明,我在该办法中打印一下本人的办法称号。发送该旌旗灯号(普通地说是挪用该办法)以后
[*]-(void)viewDidLoad
[*]{
[*];
[*]
[*];
[*]}
我们会失掉以下的log输入,能够明晰的看到selector的名字为firstSegment:secSegment:thirdSegment:
[*]2013-07-0516:34:13.977Test-
主题
OK,前奏已完,进进主题,倘使我在函数原型中删撤除第二个参数secObj,会产生甚么呢?
[*]-(void)firstSegment:(id)firstObjsecSegment:(id)thirdSegment:(id)thirdObj
[*]{
[*]WQ_FUNC_LOG;
[*]}
假如利用Xcode主动补齐办法,会发明是如许挪用
[*]-(void)viewDidLoad
[*]{
[*];
[*]
[*];
[*]}
运转一下会失掉以下log:
[*]2013-07-0517:26:10.725Test-
结论是,办法被声明成了firstSegment:secSegment::这个名字,那末参数呢?固然也不难推测和考证。
[*]-(void)firstSegment:(id)firstObjsecSegment:(id)thirdSegment:(id)thirdObj
[*]{
[*]WQ_FUNC_LOG;
[*]NSLog(@"args[]={%@,%@,%@};",firstObj,thirdSegment,thirdObj);
[*]}
当thirdSegment和thirdObj都被视为参数,我们就不能不有如许一个勇敢的料想,岂非selector能够撑持空段?岂非selector能够没着名字?
实验造一个没着名字的办法,正确的说法是,一个空的selector
[*]-(void):(id)obj
[*]{
[*]}
[*]
[*]-(void)viewDidLoad
[*]{
[*];
[*]
[*]SELsel=@selector(:);
[*]if(){
[*]NSLog(@"urright");
[*]}
[*]}
编译运转,Log输入告知我们,我们的料想是准确的,Objective-C撑持空段selector。
结论
Objective-C撑持空段selector,这明显不具有优秀的代码可读性,平常我们也不会这么写这么用,那为何还要出格提出来讲这件事呢?只是想给人人提个醒,偶然候我们的一个大意大概一个不当心,就有大概变成一个必要debug很久的低水准bug,特别是,delegate办法定名又臭又长的时分……
不管是学习Objective-C语言,还是学习ios,我都只是跟着书上的例子,在苹果机上,在Xcode和InterfaceBuilder开发环境中,按部就班的“抄”些应用程序。 重要的是,放眼全球也的确找不到第二个如苹果iOS平台这样健壮、完整、先进而且为开发者带来真实收益的开发平台来。 这个办法就是在WindowsXP或Win7的电脑上,使用vmware虚拟机来搭建一个真实的Mac OS X环境。 我也从简单的状态栏适配开始,先研究了下关于状态栏的适配,特总结如下,供广大网友一起讨论交流。 从C语言入门,因为IOS开发用的是OC语言,是在C基础上的,不过也跟C不是很搭界,你可以直接学习OC语言也可以, down下code4app网站的每个分类的代码挨着看 特别是在校的学生,都存在一个小小的尴尬——虽然学习iOS开发的热情高涨,但由于没有多余的银子购买昂贵的Mac电脑而踟蹰不前。其实,针对初学者,如果想进入iOS开发的天地 边吃零食边看Stanford的视频教程 在此,某不才愿将安装成功的Mac OS X系统的vmware虚拟机向有志学习iOS开发的各位学友们免费开放出来,经测试,可以在WindowsXP/Win7系统上完美运行,即便你的机器只有2GB内存。 开始的时候甚至想放弃,不过想想自己的未来,只能咬牙坚持,课下就不停的缠着老师。放学就补基础,这些基础的东西没有速成的,只有刻苦努力。我是后来发现的,转变自己的心态,不要读书看资料当成一种痛苦 iPhone文件系统NSFileManager讲解是本文要介绍的内容,主要是通过iphone文件系统来学习NSFileManager的使用方法,具体内容来看本文详解。 AD: iPhone文件系统NSFileManager讲解是本文要介绍的内容,主要是通过iphone文件系统来学习NSFileManager的使用方法,具体内容来看本文详解。 最后在做项目的时候一定要认真对待,毕竟这个直接和你的就业挂钩,这也是锻炼你实际操作的能力。 开始的时候甚至想放弃,不过想想自己的未来,只能咬牙坚持,课下就不停的缠着老师。放学就补基础,这些基础的东西没有速成的,只有刻苦努力。我是后来发现的,转变自己的心态,不要读书看资料当成一种痛苦 培训时可以选择安卓,iOS,Java,因为实习的时候我选了安卓,当时实习时间只有三周,学的晕头转向,而java我也没学过,iOS的基础是C语言,这个大学里还是学过的,于是选择了iOS。 近期由于IOS7的发布,所以应用的适配潮可谓是都搞的锣鼓喧天,甚是热闹,因此呢,因适配IOS7而产生的问题也是铺天盖地的卷来, 每个行业都一样,想要一天学有所成是不可能的,一定要做好努力的准备,做ios不是简单的学会oc语言。不怕多走弯路,就怕不肯动手。 这个办法就是在WindowsXP或Win7的电脑上,使用vmware虚拟机来搭建一个真实的Mac OS X环境。 培训时可以选择安卓,iOS,Java,因为实习的时候我选了安卓,当时实习时间只有三周,学的晕头转向,而java我也没学过,iOS的基础是C语言,这个大学里还是学过的,于是选择了iOS。 近期由于IOS7的发布,所以应用的适配潮可谓是都搞的锣鼓喧天,甚是热闹,因此呢,因适配IOS7而产生的问题也是铺天盖地的卷来,
页:
[1]