loading 请求处理中...

iOS开发语言

2014-11-12 | 2288 次浏览 | 作者: 未知 | 来源: 未知

objective-CiOS的开发语言。objective-CC语言的升级版。

对初学者来说,objective-C存在了很多令人费解的写法,实际上他们是非常优雅的。有C语言基础的程序员在专业老师的指导下,用1个月的时间就可以完全掌握objective-C这门编程语言了。

程序员写的最多的就是函数以及调用自己写的或者别人写的函数。本文就从函数的角度来看下objective-C的优雅之处。

C#和objective-C同属于C语言系列。让我们先看下C#的函数定义和调用,做个对比。

C#函数的定义:

public void doIt(string actorName, string movieName, int timesSeen) 

Console.Write("{0} is my favorite actor in the movie {1}, I saw it {2} times.", actorName, movieName, timesSeen); 

函数的调用:

Class1 objMovie = new Class1(); 

objMovie.doIt("莱昂纳多·迪卡普里奥", "盗梦空间", 120); 

再让.NET程序员看下objective-C的定义:

- (void) doIt:(NSString *) actorName movieName: (NSString*) value timesSeen: (int)times { 

NSLog(@"%@ is my favorite actor in the movie %@, I saw it %i times.",actorName, value, times); 

如果你第一次看objective-C,肯定会琢磨不透上面的代码,怀疑是不是写错了。

对于上面这个函数的定义:

1'-'表示这个函数是实例函数(类似非静态函数),'+'表示这个函数是类函数(类似静态函数)

2、(void)表示这个函数没有返回值。

3、函数名是'doIt:',而不是'doIt'

4、参数用空格隔开

5、参数类型写在括号中

6、参数分内部参数和外部参数,如电影名称,内部参数是:value,外部参数是:movieName

  ios100中文网

7、函数的一个参数没有外部参数的名称,有内部参数名。如:actorName

调用:

[objMovie doIt:@"莱昂纳多·迪卡普里奥" movieName:@"盗梦空间" timesSeen:120]

从上面代码可以看出除了第一个参数,其余的参数都可以加上外部参数名称用于区别。

从上面可以看出objective-C和C#区别很大,实在会令.NET程序员费解。objective-C函数设计的优雅之处在于既有内部参数名又有外部参数名,可以不用再在内部定义变量来存放函数的参数。

相关服务

  • 学术报告PPT设计与完善,学

    学术报告PPT设计与完善,学术

    ¥200.00元/项
  • 董老师(有71892部队医院培

    董老师自我评价:1.个性开朗乐

    ¥150.00元/千字
  • 职业生涯规划

    职业(Career)一词,不同于工作(Jo

    ¥200.00元/千字
  • 各种专业英文文献翻译

    本人工科研究生毕业,已翻译过

    ¥50.00元/千字
  • 吧台式餐桌设计 家具设计

    餐桌是一个家庭必不可少的一

    ¥150.00元/份
免费开办
工作室指导