Objective-C 函数(方法)的定义和调用

本文详细阐述了Objective-C中函数定义和调用的独特方式,包括消息传递的概念、函数真实命名规则以及参数传递细节。通过具体实例,帮助开发者掌握Objective-C函数的高效使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转自:http://blog.youkuaiyun.com/dirknow/article/details/6602655

函数定义和调用

Object-C的函数定义和调用都比较特别,为了让对象执行某个操作,需要向对象发送消息,因此,函数的调用被称作Object Messaging。其消息的定义是[Receiver Message],前者是接收消息的对象,后者是消息的本身。此处先看看函数的定义:

 

函数的定义由函数的类型标记(Method type identifier)、返回值(return type)、一个或者多个的函数签名关键字(Method signature)、参数的类型和命名信息组成。

 

函数的真实命名由各个级联的函数签名关键字组成。例如上述函数定义中函数真实的命名是(insertObject:atIndex:)分号隔开参数的声明。局部的函数签名关键字看起来更像是函数参数的内部命名,真正的参数命名反而在Object Messaging中不出现。例如,上述的函数调用可以写成

[myArray insertObject:anObject atIndex:0];  再来看一个例子,前一行是函数的定义,后面一行是函数的调用,可以看到后面的调用Ojbect Messaging中,写的是函数方法签名的关键字 (Method signature keywords)而不是参数命名(parameter names)。由于没有特别的函数名一项,注意其第一个函数方法签名关键字的 命名看起来就像函数名(changeColorTo)+第一个参数(Red) - (int)changeColorToRed:(float)red green:(float)green blue:(float)blue; [myColor changeColorToRed:5.0 green:2.0 blue:6.0]; 上述例子中,实例方法的真是命名是: -changeColorToRed:green:blue: ,冒号隔开的各个参数顺序不能更改。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值