欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

iOS开发:Objective-C优雅的语法

发布时间:2025/7/14 编程问答 56 豆豆
生活随笔 收集整理的这篇文章主要介绍了 iOS开发:Objective-C优雅的语法 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

对初学者来说,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

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

    调用:

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

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

    总结:本文是对Objective-C函数学习的一个简单总结。

    总结

    以上是生活随笔为你收集整理的iOS开发:Objective-C优雅的语法的全部内容,希望文章能够帮你解决所遇到的问题。

    如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。