iOS工程师面试深入浅出(OC)- NSInterger 与 Int 有什麽不一样?

iOS工程师面试深入浅出(Objective-C)- NSInterger 与 Int 有什麽不一样?

事实上在我平常的时候就是看编译器需要什麽Type,就给他什麽Type。根本没有仔细去了解 NSInterger与 Int的差异,在面试时被问到时还真的顿时不知道怎麽回答。我当时的回答是 NSInterger 是 Objective-C 封装的物件 (误)。

首先:

在c语言中,int和long的字节数是和操作系统指针所占的数值类型;

但c语言中说,long的长度永远大於或等於int;

Objective-c里,苹果的官方文档中总是推荐用NSInteger;

区别:

原来在苹果的api实现中,NSInteger是一个封装,它会识别当前操作系统的数值,自动返回最大的类型。

总结:

NSInteger与int的区别是NSInteger会根据系统的数值(32或64)自动选择int的最大数值(int或long)还有就是他和NSString一样都可以是物件。


<<:  全磁碟加密(Full Disk Encryption)

>>:  [使用者提问的问题]请问一下, 用VPN连入,\\电脑名称 找不到 \\ip 可以用 请问是什麽原因?

D5 allauth 测试

使用allatuh管理使用者帐号的注册跟登入登出等等 pip安装 pip install djang...

从听明牌,学习投资

获取明牌,并不一定就是赌徒心态;正确的观念是,应该是要先了解,人家何会推荐这只?是从基本面?消息面?...

SystemC: 月球转运站

创世神创造了世界,还觉得不够,又做了一颗月球。 过了两天觉得地球不够圆,决定把存在月球的 pi拿回来...

低效率者如何规划学习时间?

哈哈 低效率者当然是在说我啦 (抱歉 文章分类只有技术可选择 这篇算是个人碎念日记啦) 进修时期总是...

Day4 安装Vue

Vue的安装方式有很多种像我这次是使用CND的方式来使用Vue 首先呢我们可以先到Vue的网站 可以...