Objective-C和C++语法比较

本文对比了Objective-C和C++的语法差异,包括实例方法与对象方法、中括号消息传递、Objective-C的NS*与C++的stl、引入头文件的方式、类的定义、多参数方法、指向自己的指针(self与this)、id类型、数组对象混存、BOOL类型、IBOutlet与IBAction的使用、空指针表示(nil与NULL)、Property与Synthesize、字符串表示及接口与协议等概念。

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

1)实例方法和对象方法

C++语言中,对象方法的写法可能是:
void hello(bool ishello)
{
......
}

C++语言中,类的方法的写法可能是:

static void hello(bool ishello)
{
......
}
用Objective-C写出来的对象方法就是
-(void) hello:(BOOL)ishello
{
......
}

用Objective-C写出来的类方法就是
+(void) hello:(BOOL)ishello
{
......
}

类的方法的写法可能是:
加号表示类方法,这类方法是可以直接用类名来调用的,它的作用主要是创建一个实例。有人把它称为创建实例的工厂方法。就是其他函数可以直接调用这个类中的这个函数,而不用创建这个类的实例。


2)中括号


中括号可以认为是调用你刚才写的这个方法,通常在Objective-C里说“消息”。
比如C++语言里你可以这么写:
this.hello(true);
在Objective-C里,就要写成:
[self hello:YES];


3) Objective-C 的NS**** C++的stl


其实就是一个函数库。乔帮主当年被人挤兑出苹果,自立门户的时候做了个公司叫做NextStep,里面这一整套开发包很是让一些科学家们

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值